我正在尝试从Eclipse项目创建一个自包含的.jar文件。所谓“自包含”,是指将此项目的所有依赖项(即其他jar文件)都包含在生成的jar文件中。我想将导出的jar文件用作另一个项目的库。问题在于,我从依赖项中获取了一个NoClassDefFoundError类。我已尝试将所有依赖项打包到可运行的jar文件和“普通”jar文件中进行导出。但这两者都无法解决问题。
清单看起来像这样:
清单看起来像这样:
Manifest-Version: 1.0
Main-Class: com.path.to.MyMainClass
Class-Path: lib/resolver.jar lib/xercesImpl.jar lib/xml-apis.jar lib/Mac-Cocoa64/swt.jar
这个 .classpath 文件看起来是这样的:
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6"/>
<classpathentry kind="lib" path="lib/resolver.jar"/>
<classpathentry kind="lib" path="lib/xercesImpl.jar"/>
<classpathentry kind="lib" path="lib/xml-apis.jar"/>
<classpathentry kind="lib" path="lib/Mac-Cocoa64/swt.jar"/>
<classpathentry kind="output" path="bin"/>
</classpath>
缺失的类定义在SWT.jar文件中。 有任何想法出了问题或者需要采取哪些步骤才能成功地导出这个jar文件以便它可以被包含在其他地方?
干杯,
Martin