【发布时间】:2014-08-30 09:46:04
【问题描述】:
我正在 Eclipse 中开发一个 OSGi 组件(Linux 上的 Oracle JVM 1.8)。 当我通过带有所有必需包的 Eclipse Runconfiguration 运行组件时,出现以下错误:
ErrorMessage: java.lang.NoClassDefFoundError: sun/awt/image/ByteInterleavedRaster
我的组件导入已编译的 boofcv.core.image.ConvertBufferedImage 类,该类使用 sun.awt.image.ByteInterleavedRaster 类。当我检查 rt.jar 包时,它列出了 ByteInterleavedRaster 类。
当组件使用 ant 部署时,一切正常。
由于我对 Java CLASSPATH/compile/Ant 不太熟练,我不知道应该为您提供哪些进一步的信息。
清单包含所需的捆绑包。 org.boofcv 包含 ConvertBufferedImage,其中找不到 ByteInterleavedRaster 类。 [已编辑] 当然是占位符。
清单版本:1.0 捆绑清单版本:2 捆绑包名称:[已编辑] Bundle-SymbolicName:[编辑];单例:=true 捆绑版本:1.0.0 要求捆绑:org.apache.activemq, [已编辑], org.boofcv 捆绑激活器:[已编辑] Bundle-ActivationPolicy:懒惰 Bundle-RequiredExecutionEnvironment:JavaSE-1.7 导入包:org.osgi.framework 出口包裹:[已编辑] 捆绑类路径:。【问题讨论】:
-
也许像清单文件这样的东西会有所帮助。您是否指定(在清单中)要导入此类?
-
我添加了清单和信息。
-
@Josch 你可以接受它解决问题的答案,我在你的代码中看到了它;-)
标签: java eclipse ant osgi noclassdeffounderror