如何将Sun JRE私人安装到我的应用程序中?

我需要发布一个包含JRE的Java产品,但我不希望用户解决安装select问题。 我的要求是:

  1. JRE安装在我的应用程序的子文件夹中,以便我可以在.bat.sh文件中使用相对path。
  2. 安装不应该混淆系统上现有的JRE。
  3. 安装过程应尽可能简单。

问题:我是否可以简单地将JRE文件夹解压缩到客户端的机器上,而无需运行安装程序? 如果不,我还能做些什么来保持这个过程尽可能无痛苦?

我想如果你要分发它,你会希望确保你不需要运行安装程序,否则你可以覆盖目标工作站/服务器上的默认值。 那个客户可能会很不高兴!

如果您包含使用此自包含的jvm运行您的应用程序所需的所有configuration文件,则您将执行与其他供应商相同types的操作。 所以,我不认为这是一个大问题。 例如,不要求最终用户在系统范围内设置JAVA_HOME,并将任何运行时选项包含在conf文件中,例如jboss使用run.conf或者tomcat使用setenv.sh。

也就是说,如果你分发jvm,你可能会负责支持它,可能会超出oracle提供的支持期 – 所以你可能会认为这是不该做的理由。

我看到有两个select:

  1. 无提示安装需要INSTALLDIR=<drive>:\<install_path>参数
  2. 只需将已安装的文件夹压缩(请参阅此处的讨论)

我认为我的目的方法2更好,因为它的简单性。 如果我们必须在Windows控制面板中显示Javaconfiguration工具或使用applets / jnlp的浏览器集成