2012-10-19 53 views
1

我在NetBeans平台(RCP)上开发了一个Java Swing应用程序。我想将NetBeans生成的安装程序包含在Windows JRE中,以防PC未安装JRE,但我不知道如何执行此操作。我试图按照以下说明操作,但失败了(我发现这些指令假设你完全知道JDK和JRE上的所有内容,例如,我将得到'pack200'消息不被识别为内部或外部命令......它看来,一些路径是错误或过时):在NetBeans安装程序中包含(捆绑)JRE?

How to bundle JVM (JRE/JDK) in the installer bundle?

Including the JRE in a NetBeans Platform Installer

Installing the JRE via an Application's Installer via Windows

我想收拾JRE版本7u7

我的JDK的文件夹结构如下: C:\ Program Files文件\的Java \

在这里我有以下两个文件夹: jdk1.7.0_07jre7

请帮我...非常感谢您

+1

更好的整体策略是确保最终用户拥有使用'deployJava.js'安装的最少量的Java。这样,当您决定捆绑的JRE发现有安全错误并被替换时,应用程序可分发不需要重新生成。然后继续使用[Java Web Start](http://stackoverflow.com/tags/java-web-start/info)从链接直接启动Swing GUI。 –

+0

这是用于桌面应用程序还是Web小程序,还是两者兼而有之?此外,在某些情况下,此桌面应用程序将用于没有互联网访问的环境中。 – jadrijan

+0

*“这是用于桌面应用程序还是Web小程序,还是两者兼而有之?“*我认为我在之前链接的信息页面中描述的非常好。*”此外,有些情况下,这种桌面应用程序将用于没有互联网访问的环境中。“*它需要互联网或网络访问。现在有更多支持Java的计算机可以访问网络,而不是有可移动磁盘(用于从CD/DVD下载软件) –

回答

2

我已在您的链接中关注“通过应用程序的安装程序安装JRE,通过Windows”为我的Netbeans平台应用程序成功创建Windows安装程序。 你遇到了什么问题?

'pack200'未被识别为内部或外部命令”是因为%JAVA_HOME%/ bin不在您的PATH(环境变量)中。你可以运行pack200 “C:\ Program Files \ Java \ jdk1.7.0_07 \ bin \ pack200”-J-Xmx1024m rt.jar.pack.gz rt.jar

顺便说一句,它似乎是“应用程序。 conf = nbproject/my.conf“文章中的部分已经过时。我必须直接修改我的项目中的“build/launcher/etc/app_name .conf”文件。

+0

非常感谢你 – jadrijan

1

也许这个指南可以帮助你:

自包含应用:包装非JavaFX应用程序 https://blogs.oracle.com/talkingjavadeployment/entry/packaging_improvements_in_jdk_7#3

一个流行的提问人的追问关于自包含的应用程序 - 我可以包我的Java应用程序作为独立的应用程序?绝对。 即使JDK 7 update 6附带的工具也是如此。只需按照creating package for Swing application with integrated JavaFX content的步骤操作,即使应用程序不使用JavaFX,它们也可以工作。

+1

它总是很好,如果你引用你引用的任何东西,因为链接经常打破,使答案失去其基础。 – Vishrant