如何将 JRE 捆绑到 Java 应用程序的 EXE 中? Launch4j 提示“运行时丢失或损坏。”

2023-12-04

我对 Java 编程很陌生,但总体上熟悉一切的工作原理。我希望能够将 jar 文件和 jre 放入 Windows 可执行文件(exe)中,这样当我分发它时,客户端不需要安装 JRE。我应该使用什么程序?

我有 launch4j,它似乎完全符合我的要求,但当我尝试运行该应用程序时,我得到“此应用程序已配置为使用捆绑的 Java 运行时环境,但运行时丢失或损坏。”

我希望我的应用程序只是一个可运行的 exe,而不是安装程序。至少,谁能告诉我如何正确地将 JRE 与 launch4j 捆绑在一起?


我捆绑 JRE 的唯一方法是使用Launch4J and Inno安装编译器.

首先,创建一个jre6文件夹(例如)与输出文件 (.exe) 位于同一目录中。

然后将 JRE 从您的系统复制到您的jre6 folder.

然后你打开 Launch4J 并设置捆绑的 JRE 路径- 只需输入jre6。然后单击“构建”按钮(显然,在输入所有其他参数之后 - 但您需要在JRE选项卡本身就是捆绑的 JRE 路径 value.)

我本来希望这能起作用,但如果您随后将 .exe 移动到新位置(因此它不再与您的jre6文件夹)你会得到此应用程序配置为使用捆绑的 Java 运行时环境,但运行时丢失或损坏当您尝试运行应用程序时出错...

我一整天都在玩这个,但我无法得到Launch4J将 JRE 包含在 .exe 文件中。在我看来,这真的很差,因为他们的文档似乎根本没有提到这个问题。

所以我要做的就是使用Inno安装编译器(ISC)。此应用程序用于将您的 .exe 包装为 Windows Installer 文件。因此,我在 ISC 脚本中添加了一个设置,将 JRE 复制到安装程序包中。我添加到脚本中的行(在[Files]部分)是:

Source: "M:\Netbeans\MyApp\jre6\*"; DestDir: "{app}\jre6\"; Flags: recursesubdirs createallsubdirs

...一些解决方法,但它确实达到了目的。

重复以上所有步骤,你就应该排序了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将 JRE 捆绑到 Java 应用程序的 EXE 中? Launch4j 提示“运行时丢失或损坏。” 的相关文章

随机推荐

  • 如何在基于类的组件中使用 React.forwardRef?

    我正在尝试使用 React forwardRef 但不知道如何让它在基于类的组件 而不是 HOC 中工作 文档示例使用元素和函数组件 甚至将类包装在高阶组件的函数中 所以 从类似的事情开始this在他们的ref js file const
  • 如何使 UITableView 与大标题 VoiceOver 兼容?

    我的应用程序有一个表格视图 其中有一个大的空白 tableHeaderView 允许将可见单元格完全滚动到窗口之外 到底部 所以 contentOffset 为 0 0 意味着内容被滚动到窗口之外 初始 contentOffset 为 0
  • 显式转换函数、直接初始化和转换构造函数

    后标准草案 n3376 有一个使用显式转换函数到用户定义类型的示例 12 3 2 2 class Y struct Z explicit operator Y const void h Z z Y y1 z OK direct initia
  • 编写存储过程来获取 Jqgrid 分页数据的困难

    我正在使用以下 SQL 过程来获取用于我的 Web 应用程序中 JqGrid 分页的数据 ALTER PROCEDURE dbo NewStoredProc skip int pageSize int OrderBy Varchar 20
  • 检测快速按两次电源按钮

    是否可以检测用户是否快速按下电源按钮两次 Apple 使用这种方式在带有 Face ID 的新款 iPhone X 上确认 Appstore 购买 有可用的API吗 希望在类似情况下使用它通过 Face ID 进行身份验证 不会 系统本身控
  • 将 YAML 与变量一起使用

    YAML 文件中可以使用变量吗 例如 theme name default css path compiled themes theme name layout path themes theme name 在这个例子中 如何theme n
  • Mac OS X 上 sqlite4java Jar 出现 UnsatisfiedLinkError

    我在 Java 应用程序中使用 sqlite4java 库 当我在 Eclipse 中运行它时它工作得很好 但是当我构建可运行的 JAR 并尝试在 Mac OS X 上运行它时 出现以下错误 Error Could not load dat
  • C# DLL 配置文件

    我试图将 app config 文件添加到我的 DLL 中 但所有尝试都失败了 据 音乐创世纪 报道 将配置信息放入 DLL 中 这应该不是问题 所以显然我做错了什么 以下代码应从 DLL 返回我的 ConnectionString ret
  • 使用 VBA 方法通过 Bing API 获取距离

    我试图通过 VBA 创建一个方法 当我使用此方法时 它显示 NAME 有时 value Public Function DISTANCE start As String dest As String key As String Dim fi
  • Objective-C UITableView 单元格图像

    所以我有一个UI表格视图Facebook 好友和一个单元格 我想将图像添加到其中 当我尝试以下代码时 cell imageView image UIImage imageWithData NSData dataWithContentsOfU
  • 从数据库或属性获取 Spring Security 拦截 url

    希望这非常简单 存在 并且我忽略了我眼皮底下的一些东西 我知道我可以通过注释限制访问 Secured ROLE ADMIN 或通过配置
  • UIButton标题消失

    我有一个 ViewController 里面有一个 UIButton 当我点击时 按钮上的文字消失了 我为所有状态添加了所有 setTitle 但它继续消失 任何想法 这是我的代码的一部分 interface AddCardViewCont
  • 重塑表格以将行转换为列

    我尝试搜索帖子 但只找到了 SQL Server Access 的解决方案 我需要 MySQL 5 X 中的解决方案 我有一个包含 3 列的表 称为历史记录 hostid itemname itemvalue 如果我做一个选择 select
  • 如何在 mysql C++ 连接器中设置超时

    我正在使用 C 连接器连接到 MySQL 服务器 当服务器离线或处于睡眠状态时 语句执行方法需要一段时间才能检测连接问题 是否有方法或变量来控制客户端的等待超时时间 Regards德瓦拉 古达 您可以使用mysql options设置客户端
  • Swift Spritekit 我检测到碰撞,但它多次读取碰撞

    AppImage我有一堵由 4 个不同颜色的矩形组成的墙 要穿过这堵墙 球的颜色必须与墙上的矩形的颜色相匹配 球将穿过墙壁 新的墙壁将会出现 然而 当我检测到这种碰撞时 我得到了多个碰撞读数 我已经通过打印死或活来测试这一点 并且它会多次打
  • Idea 中的 Tomcat。战争爆发:服务器未连接。部署不可用

    我正在尝试这个tutoial 我创建了新项目并运行它 TomCat 启动了 但之后什么也没发生 我可以手动在浏览器中打开http localhost 8080并查看 TomCat 主页 这意味着服务器可以启动 但是我无法打开index js
  • ajax成功后jQuery继续循环执行

    我有一个循环中的 jQuery ajax 调用 但是我不希望同时进行这些 ajax 调用 我需要先完成第一个 ajax 调用 然后再进行下一个调用 for var i 0 i lt options length i jQuery ajax
  • 在 python 中使用 enumerate() 时从列表中删除元素[重复]

    这个问题在这里已经有答案了 Object 是一个解码后的 json 对象 其中包含一个名为 items 的列表 obj json loads response body as unicode for index item in enumer
  • 如何使用 GAE 创建自动完成功能?

    我使用 jQuery UI自动完成小部件 我还有 GAE 数据存储 class Person db Model key name contains person id in format lastname firstname middlen
  • 如何将 JRE 捆绑到 Java 应用程序的 EXE 中? Launch4j 提示“运行时丢失或损坏。”

    我对 Java 编程很陌生 但总体上熟悉一切的工作原理 我希望能够将 jar 文件和 jre 放入 Windows 可执行文件 exe 中 这样当我分发它时 客户端不需要安装 JRE 我应该使用什么程序 我有 launch4j 它似乎完全符