![](/img/trans.png)
[英]How do I specify a directory for properties files in a jar manifest classpath?
[英]Manifest Classpath for Jar files
我创建了一个小型应用程序,其中包含一个名为JavaFX的外部程序包。 该软件包包含4个jar文件。 当我从命令行到当前目录创建一个jar时,该jar执行OK(从4个jar中导入类)。 但是,当我从另一个目录移动该jar文件时,该文件将不会执行。 换句话说,创建的jar似乎无法找到这些jar文件(JavaFX jar)中的类?
以下是清单文件:
Main-Class: QuizMenu
Class-Path:
deploy.jar
javaws.jar
jfxrt.jar
plugin.jar
文本文件在jar的每一行的开头和结尾确实包含一个空格,最后一行的最后一个回车符(与最后一行分开的每一行都不包含回车符)。 Main-Class:
标头也可以正常工作。 (只是classpath似乎不起作用)。
谁能确定文件有问题?
建议
您不应在mainifest文件中引用任何这些jar文件( deploy.jar javaws.jar jfxrt.jar plugin.jar
)。
JavaFX打包工具
相反,您应该使用支持JavaFX的部署工具,例如:
以上工具将适当地打包您的应用程序以使用JavaFX。
背景
如果您尝试将JavaFX,Java部署和Java插件jar文件与应用程序捆绑在一起,那么当您在其他Java版本(例如Java 8或9)上运行应用程序时,它可能无法在所有将来的发行版中正确地用作JavaFX。将被定义为Java运行时平台的一部分,而不是作为单独安装的库或可以与独立于Java运行时其余部分的应用程序捆绑在一起的库。
此外,诸如jfxrt.jar之类的jar文件依赖于众多本机动态链接的库(.so,.dll等),这些库因平台而异,并且具有32位和64位变体。 jfxrt.jar的版本必须与基础本机库的版本匹配(并且相应平台的基础本机库必须对动态负载链接器可用),以便jfxrt.jar(例如JavaFX)正常运行。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.