繁体   English   中英

Sun JDK和open JDK之间的区别

[英]difference between Sun JDK and open JDK

我遇到了以下错误:

线程“Thread-1”中的异常java.lang.IncompatibleClassChangeError:找到类com.sun.image.codec.jpeg.JPEGImageEncoder,但接口是预期的

我使用Sun JDK构建了我的JAR,并且我在OpenJDK上运行。 我有点沉迷于这种环境。

有一个简单的方法吗? 我是否必须在OpenJDK上编译运行代码?

com.sun.image.codec.jpeg.JPEGImageEncoder的名称是Sun特定的包,所以不能保证(实际上它不太可能)任何其他JDK \\ JRE将提供该类。 你是直接使用它吗? 如果是这样,您将应用程序限制为仅限Sun的JVM。

从它的外观来看,Jasper Reports正在向下钻取并使用它不应该使用的内部类/方法。 这显然不适用于所有平台......这并不奇怪,因为Sun / Oracle特别声明这样做很容易破解。

你该怎么办?

  • 查看支持的平台数据表 我注意到它列出了OpenJDK 6,但没有列出OpenJDK 7.也许你应该坚持使用JasperSoft支持的平台。

  • 我发现这个页面好像在谈论这个问题......或者类似的东西......并提供了一种解决方法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM