RFR: 8275345: RasterFormatException when drawing a tiled image made of non-writable rasters [v2]

Phil Race prr at openjdk.java.net
Fri Feb 11 23:15:06 UTC 2022


On Fri, 11 Feb 2022 10:40:20 GMT, Martin Desruisseaux <duke at openjdk.java.net> wrote:

>> test/jdk/java/awt/image/DrawImage/TiledImage.java line 98:
>> 
>>> 96:  */
>>> 97: final class TiledImage implements RenderedImage {
>>> 98:     /**
>> 
>> Still not right. Now you added the tags I ran under jtreg and it errored out.
>> result: Error. java.lang.IllegalAccessException: class com.sun.javatest.regtest.agent.MainWrapper$MainThread cannot access a member of class TiledImage with modifiers "public static
>> 
>> Basically change "final" to "public" - or at least add public. 
>> 
>> Might be prudent to try this for yourself - and useful for the future.
>> jtreg instructions for building it can be found here : https://openjdk.java.net/jtreg/build.html
>> Very possibly there's someone that provides a pre-built binary. There's none on OpenJDK.
>
> Thanks for the tips and your patience. Actually I tried to run jtreg yesterday before to commit the change, but got the following error (I wanted to try on Java 17 first in order to verify that the test failed):
> 
> 
> jtreg -jdk:$JAVA_HOME test/jdk/java/awt/image/DrawImage/TiledImage.java
> 
> 
> failed to get value for vm.cds.write.archived.java.heap
> java.lang.UnsatisfiedLinkError: 'boolean jdk.test.whitebox.WhiteBox.canWriteJavaHeapArchive()'
> 	at jdk.test.whitebox.WhiteBox.canWriteJavaHeapArchive(Native Method)
> 	at requires.VMProps.vmCDSCanWriteArchivedJavaHeap(VMProps.java:413)
> 	at requires.VMProps$SafeMap.put(VMProps.java:72)
> 	at requires.VMProps.call(VMProps.java:113)
> 	at requires.VMProps.call(VMProps.java:60)
> 	at com.sun.javatest.regtest.agent.GetJDKProperties.run(GetJDKProperties.java:80)
> 	at com.sun.javatest.regtest.agent.GetJDKProperties.main(GetJDKProperties.java:54)
> 
> I'm sure I did something wrong with my configuration…

Alas, I'm purely a user as far as jtreg goes. I've had odd looking errors myself and in those cases the eventual answer was often that I was running the wrong (too old) version of jtreg.
I hunt jtreg down from an internal build archive so I can't point you at what I use (nor provide it) but all the external contributors must have some favoured place to get their copy. I just don't know what it is. the code-tools list might be able to help.

But if you want to expedite this, just make the one change - I already tested it.

-------------

PR: https://git.openjdk.java.net/jdk/pull/7337



More information about the client-libs-dev mailing list