Java 最终jar依赖于什么?

Java 最终jar依赖于什么?,java,jar,executable-jar,Java,Jar,Executable Jar,我正处于应用程序发布的最后一步,因此创建了jar,名为App.jar。我还有其他依赖于App.jar的jar,所以我宁愿将其包含在App.jar中。在尝试运行时,如果将App.jar放入主项目的文件夹中,它就会工作。但是,当放在它的外部(例如在dekstop上)时,它不能完全工作,这意味着一些GUi组件没有显示。我的问题是: 除了我的App.jar所依赖的其他jar之外,它是否还依赖于其他文件或其他条件 编辑: 我在Eclipse中工作,为了构建jar,我刚刚导出了它,并选择了“将所需的库打包

我正处于应用程序发布的最后一步,因此创建了
jar
,名为
App.jar
。我还有其他依赖于
App.jar
的jar,所以我宁愿将其包含在
App.jar
中。在尝试运行时,如果将
App.jar
放入主项目的文件夹中,它就会工作。但是,当放在它的外部(例如在dekstop上)时,它不能完全工作,这意味着一些GUi组件没有显示。我的问题是:

除了我的App.jar所依赖的其他jar之外,它是否还依赖于其他文件或其他条件


编辑:

我在Eclipse中工作,为了构建jar,我刚刚导出了它,并选择了“将所需的库打包到生成的jar”选项,该选项将我需要运行的所有jar放入App.jar中。我的MANIFEST.MF如下所示:

Manifest-Version: 1.0
Rsrc-Class-Path: ./ JTattoo.jar plugin.jar docking-frames-common-1.1.1
 -SNAPSHOT.jar jl1.0.jar swt-3.7M5-win32-win32-x86.jar worldwind.jar a
 ccess-bridge.jar sunpkcs11.jar looks-2.0.1.jar tools.jar OfficeLnFs_2
 .7.jar jce.jar jna_WindowUtils.jar dom4j-2.0.0-ALPHA-2.jar junit-4.5.
 jar rt.jar mysql-connector-java-5.1.21-bin.jar sunmscapi.jar glasslib
 .jar resources.jar jxl.jar dnsns.jar sunec.jar jogl.jar mp3spi1.9.4.j
 ar docking-frames-core-1.1.1-SNAPSHOT.jar DJNativeSwing.jar tritonus_
 share.jar dom4j-2.0.0-ALPHA-2-sources.jar zipfs.jar MozillaInterfaces
 -1.8.1.3.jar jfr.jar DJNativeSwing-SWT.jar gluegen-rt.jar jaxen-1.1.1
 .jar gdal.jar localedata.jar jna-3.2.4.jar charsets.jar sunjce_provid
 er.jar jsse.jar jaccess.jar
Class-Path: .
Rsrc-Main-Class: org.cnstar.wiki.app.GreatPlaces
Main-Class: org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader
SplashScreen-Image: images/splash_screen.png
  • 您应该正确地设置类路径,以包含所需的所有JAR

  • 是的,由于可传递依赖关系,可能会有更多的JAR依赖关系。您的App.jar可能依赖于某个jar,而该jar可能依赖于另一个jar。使用Maven,您可以摆脱所有此类担忧,因为它会自动下载所有依赖项


  • 您正在考虑类路径,研究它。您使用什么来构建您的jar文件?蚂蚁还是马文?两者都有包含依赖项的选项。如何执行此操作取决于您正在使用的生成工具,因此请编辑您的问题以指示您正在使用的内容。此问题很可能被标记为重复问题。见前amplehttp://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven