当前位置: 首页 > 知识库问答 >
问题:

带有外部库的Jar到exe

邹涵畅
2023-03-14

我一直在尝试将jar转换为exe。该程序(jar)使用蓝牙库“Bluecove”,这是某个目录中的另一个jar。该程序还使用Java Swing,通常是JFrame等。当从Netbeans或Eclipse中运行时,该程序运行良好。现在是我部署它的时候了,因此我需要将其转换为exe。但我一直无法让最终的可执行文件与“Bluecove”链接。我尝试了JSmooth和Launch4j,但是使用这两个工具,虽然我可以完成这个过程并创建“exe”,但最终的程序没有运行,因为它找不到Bluecove类。

有什么建议可以绕过这个问题吗?这些转换器都没有任何关于链接库的文档。感谢您的帮助。

解决方案:感谢大家的回答!我使用了Andrew Thompson建议的方法来部署我的程序,它运行得很好。为了创建JAR,我更喜欢将所有内容都放在一个JAR中,正如Abdullah Shaikh所建议的那样。为此,我使用了Fat-Jar Eclipse插件。

共有3个答案

赵越
2023-03-14

在jar内部,您需要放置所有依赖的jar,或者您可以使用Class-Path标头为您的jar提供清单。

您也可以尝试脂肪罐扩展或一个罐子

龚迪
2023-03-14

确保在创建启动器时将bluecove JAR添加到类路径中:在JSmooth中设置类路径,在Launch4j中设置类路径。

姜乐语
2023-03-14

现在是我部署它的时候了,因此我需要将其转换为exe。

这两种说法在一起没有意义。我们无法部署Swing桌面应用程序。使用基于Windows的可执行文件*nix或OS X。部署Java桌面应用程序的最佳选择。通常来自使用Java web Start的网页上的链接。

来自BlueCove文档:安装:

BlueCove依赖于您的操作系统或蓝牙USB设备附带的已安装的本机蓝牙堆栈。

BlueCove二进制(已编译)版本的安装如下:

  • 下载BlueCove二进制版本

2Java基于Web Start的JNLP扩展:

  1. BlueCove主API(BlueCove.jar)的扩展,支持Windows和OS X,以及Linux所需的核心类。这个“主”JNLP文件将有一个特定于Linux的参考资料部分,该部分反过来引用“仅限Linux”扩展JNLP
  2. Linux特定API的扩展(bluecove-gpl.jar),其中包括一个安装程序元素,用于为用户弹出许可证提示(如果需要,整个扩展仅用于生成许可证提示)。这是一个小演示。将显示许可协议的扩展安装服务

..这是否要求用户在使用应用程序时始终保持互联网连接,或者这只是第一次需要互联网的激活?

JavaWeb Start客户端(应用程序。启动适当的JVM和你的应用程序。)通常会向主服务器检查与该操作系统相关的应用程序Jars的更新。幸运的是,通过在JNLP中指定一个元素,它可以配置检查何时以及如何完成,以及应用程序是否可以根据需要“离线”运行:

<offline-allowed />

离线允许的元素(jnlp元素的一部分)确保在初始安装后,应用程序。可以离线使用。

 类似资料:
  • 问题内容: 我使用.jar开发一个项目以重用代码。 因此,我在名为TOOLS.jar的.jar上进行了开发,并在文件HelloWorld.java中开发了一个简单的应用程序,该应用程序从TOOLS.jar引用了我的软件包TOOLS。 我使用以下命令行进行编译: 成功,当我想执行我的应用程序时,我使用以下命令(位于C:\ MyApp文件夹中): 成功了,但是我的问题是: 当我有多个外部.jar文件时

  • 问题内容: 我在Java项目中添加了一些外部库(在netbeans中)。 是否可以将外部jar库放入Java存档(而不是将其放入单独的(例如)“ lib”目录)? 问题答案: 当然可以。可以使用包含所有依赖项的“捆绑罐”下载一些开源项目。 您需要提取所有jar,然后将其再次打包到一个文件中。在此处 可以看到使用Ant进行此操作的示例。

  • 我打开了快照中包含MyApplicationJobDTO的jar,并验证了该文件是否存在。 在运行时,java似乎找不到该类,即使该类在那里。我不认为我应该向java类路径添加任何内容,因为jar位于快照jar中。我被困住了,不确定为什么我会得到运行时错误。 用其注释初始化

  • 我有一个带有两个外部库的Java项目。在Eclipse中一切都运行良好,当导出为可运行的JAR时没有错误。但是,当我使用会抛出臭名昭著的。 我尝试使用所有三个导出选项(提取、包、复制),但没有成功。 (使用eclipse)

  • 我试图为我的老师制作我的eclipse项目的这个.exe文件,但是每次我这样做都会给我错误,声称lwjgl库不在里面。然而,当我从eclipse导出用于创建.exe的可运行jar时,我选择了“Package required libraries into generated jar”。我尝试通过命令提示符运行.jar,但它给出了以下错误(单击链接):https://scontent-dfw.xx.

  • 我最近下载了Android Studio来开发Android应用程序(我来自Eclipse),我在使用外部库和/或外部JAR文件时遇到了问题。注意:以下测试是在Android Studio中从头创建的一个新应用项目上进行的。 示例1:JAR导入。 > 从Google下载Admobs SDK的新副本。 将库jar复制到项目的/libs/文件夹中。 在project explorer中,右键单击新添加