-1

我安装了一个 Java 应用程序。使用 Launch4J 将 jar 捆绑到一个 .exe 文件中。现在我想为这个应用程序创建一个补丁。

如果我创建另一个只包含更新文件的 jar,我如何在原始代码中引用它?

4

3 回答 3

1

我从未使用过 Launch4J,但是我认为您应该尝试影响类路径。JRE 总是从类路径加载类。从这个角度来看,jar 没有附加价值,只是充当 *.class 文件和资源的容器。现在,如果您成功配置您的工具来执行以下操作:classpath = C:\Temp\my_patch_path;$your_current_classpath 那么它足以将您更改的文件放入 C:\Temp\my_patch_path (当然保留包结构)。在这种情况下,JRE 将首先加载您的类。希望这可以帮助

标记

于 2011-08-09T07:13:26.613 回答
1

我安装了java应用程序。..现在我想为这个应用程序创建一个补丁。

这是J2SE 附带的Java Web Start启动技术的优势之一。只需更新服务器上的 Jar,并在下次应用程序时更新。启动,它将更新。

更新可以针对您的用例进行优化,配置为在启动之前或之后延迟或急切地完成,甚至可以使用 JNLP API 的DownloadService以编程方式控制。

..并且 jar 被捆绑到一个 .exe 文件中..

“不幸的是”,JWS 可以在 Windows、..和 Mac. 和 *nix 上运行 - 所以您可能需要扩展您的视野。


顺便说一句 - 我不知道如何对 Launch4J 做同样的事情,但是,这确实是一个错误的问题。我的目标是回答正确的问题,即“如何部署和更新 Java 富客户端?” . ;)

于 2011-08-09T07:07:24.967 回答
0

如果不更改 exe 的内容,可能无法执行此操作。

于 2011-08-09T05:46:55.610 回答