【问题标题】:deploy jar file with external libraries使用外部库部署 jar 文件
【发布时间】:2014-12-20 18:27:44
【问题描述】:

我正在完成一个必须部署为 jar 文件的项目,在 eclipse 中它工作正常,我的项目依赖于两个库,这两个库也都依赖于 dll 文件。我已将这些 dll 的路径添加到每个外部 jar 的本机库位置。然后我使用 eclipse 可运行 jar 文件导出向导将项目导出为 jar 文件我在指定位置获取 jar 文件,它运行但是当我单击一个调用我得到的库之一的按钮时,我得到 java.lang.UnsatisfiedLinkError : 控制台上的 java.library.path 中没有 rxtxSerial。

编辑:当我复制 [...]/jre7/bin/ 文件夹中的 dll 时,我的应用程序可以工作,但我希望我的应用程序无需执行此操作即可运行。

问候。

【问题讨论】:

  • 使用控制台运行你的 jar 文件。使用以下命令:java -jar app.jar
  • 是的,我做到了,我得到 java.lang.UnsatisfiedLinkError: no rxtxSerial in java.library.path,我添加了 dll 的路径(在我的桌面上)。我做错了什么?
  • 所以问题是你的文件路径。你必须阅读这篇文章stackoverflow.com/questions/944610/…
  • 你的回答对我帮助很大,我解决了一部分问题谢谢,我已经编辑了我的帖子。
  • 你可以将我的评论标记为有帮助

标签: java eclipse deployment classpath executable-jar


【解决方案1】:

像这样运行:java -Djava.library.path=/path_to_dll -jar app.jar

【讨论】:

  • 感谢您的回答,它确实有效,但问题是我希望用户无需使用终端即可正常启动应用程序。这意味着应该在导出到 .jar 之前将路径添加到应用程序中,而我无法做到这一点。我找到了另一种将 dll 放入 [...]/jre7/bin/ 的解决方案,但这也需要最终用户进行操作。
猜你喜欢
  • 1970-01-01
  • 2015-10-15
  • 2010-10-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-30
  • 2013-09-19
相关资源
最近更新 更多