我正在开发一个JavaFX应用程序。在构建我的项目时,我注意到当我改变它的位置时,我的jar文件夹无法打开。我检查了我的jar文件夹,发现我的lib
文件夹丢失了。
如何解决此问题?
答案 0 :(得分:1)
您的JAR文件需要类路径中的lib才能运行。每当你移动jar时,你也需要移动libs文件夹。
如果你想避免使用工具将libs打包到一个jar中,但通常要避免使用这种方法,因为它会使构建,增量更新等更加困难。
答案 1 :(得分:1)
我认为你在这里混淆了可移植性的定义 - 当人们谈论jar文件是可移植的时,它们通常意味着它可以在多个架构上运行而不会发生变化(因为它使用字节码。)它们通常不会意思是你可以把它从它的位置撕掉,把它转移到其他地方并期望它神奇地找到它需要的所有资源!
通常你的jar文件只包含你的类文件,也可能包含一些其他资源。虽然您的应用程序依赖于的所有内容都可以位于一个jar文件中,但是将它们放在该文件之外的同一目录中更为常见,因为它可以更换单个组件并更新软件
如果你绝对必须将你的应用程序放在一个可移植的jar文件中,那么看看One-jar就可以了。
答案 2 :(得分:-1)
使用maven包含项目中的所有依赖项。更易于管理。