Why am I getting java.lang.NoSuchMethodError: createImageUsingNativeSize error in 1.8.0_45

This code, which was used in some cases to process single images dragged from certain web browsers (firefox), did not show any problems in version 1.8.0_25

image  = (Image) trans.getTransferData("image/x-java-image;class=java.awt.Image");

but now at 1.8.0_45 calling

java.lang.NoSuchMethodError: createImageUsingNativeSize
at sun.lwawt.macosx.CDataTransferer.getImageForByteStream(Native Method)
at sun.lwawt.macosx.CDataTransferer.platformImageBytesToImage(CDataTransferer.java:238)
at sun.awt.datatransfer.DataTransferer.translateBytes(DataTransferer.java:1659)
at sun.lwawt.macosx.CDataTransferer.translateBytes(CDataTransferer.java:142)
at sun.awt.dnd.SunDropTargetContextPeer.getTransferData(SunDropTargetContextPeer.java:269)
at sun.awt.datatransfer.TransferableProxy.getTransferData(TransferableProxy.java:73)
at java.awt.dnd.DropTargetContext$TransferableProxy.getTransferData(DropTargetContext.java:376)
at com.jthink.jaikoz.draganddrop.ImageHandler.createImageCell(ImageHandler.java:30)

Is this a bug in the new version of OSX Java, or am I just doing something wrong, is there an easy way?

Floor

+4
source share
2 answers

This error was eventually fixed in JDK1.8.0_66, see https://bugs.openjdk.java.net/browse/JDK-8037371

0
source

Switching to JDK 1.8.0_31 to fix the problem for me.

I call the following "jdk8" script with ". Jdk8"

version=1.8.0_31
export JAVA_HOME=$(/usr/libexec/java_home -v $version) 

java -version
java version "1.8.0_31"
Java(TM) SE Runtime Environment (build 1.8.0_31-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)

java.lang.NoSuchMethodError: createImageUsingNativeSize 1.8.0_45

0

Source: https://habr.com/ru/post/1599275/


All Articles