我一直在考虑是否将JRE与我的应用程序捆绑在一起。我列出了一些原因,说明为什么我认为这会很有用,但我也犹豫不决,因为这会使应用程序变得更大。
我认为这会很有用的原因如下:
1.目前,通过运行批处理文件(实际上是一个指向批处理文件的快捷方式),来运行该应用程序。它只调用“java -jar XXX”,这需要Java在路径中,但并非总是如此。
2.我们是一个小团队,并没有完全使用Java 7(我们正在尝试调试一些奇怪的错误)。如果用户有Java 7,他们可能会有不愉快的软件体验-这对我们来说不好。打包特定版本的JRE可以确保我们已经在其上进行了全面测试。
3.我们支持32位和64位Windows平台。当用户下载软件时,他们选择32位或64位,但这是在询问他们使用哪个版本的Java。大多数用户不知道是否在他们的64位平台上安装了32位Java,如果他们的操作系统是64位,则下载32位可能会令人困惑。
然而,不打包它也有一些好理由:
1.如果Java中存在安全漏洞或其他重要更新被JRE所做,我们需要分发一个新版本的应用程序和新的Java版本。我们通常每隔几周更新一次应用程序,所以我现在不太担心这个问题。
2.应用程序将会变得更大,因为它包含了一个打包的JRE。
能否有人根据这些要求提供一些指导,他们认为是否将JRE打包是个好主意?如果不是,除了希望Java在路径中(更重要的是,如果没有,我们的用户可能不知道如何添加它),还有哪些替代方案?
我认为这会很有用的原因如下:
1.目前,通过运行批处理文件(实际上是一个指向批处理文件的快捷方式),来运行该应用程序。它只调用“java -jar XXX”,这需要Java在路径中,但并非总是如此。
2.我们是一个小团队,并没有完全使用Java 7(我们正在尝试调试一些奇怪的错误)。如果用户有Java 7,他们可能会有不愉快的软件体验-这对我们来说不好。打包特定版本的JRE可以确保我们已经在其上进行了全面测试。
3.我们支持32位和64位Windows平台。当用户下载软件时,他们选择32位或64位,但这是在询问他们使用哪个版本的Java。大多数用户不知道是否在他们的64位平台上安装了32位Java,如果他们的操作系统是64位,则下载32位可能会令人困惑。
然而,不打包它也有一些好理由:
1.如果Java中存在安全漏洞或其他重要更新被JRE所做,我们需要分发一个新版本的应用程序和新的Java版本。我们通常每隔几周更新一次应用程序,所以我现在不太担心这个问题。
2.应用程序将会变得更大,因为它包含了一个打包的JRE。
能否有人根据这些要求提供一些指导,他们认为是否将JRE打包是个好主意?如果不是,除了希望Java在路径中(更重要的是,如果没有,我们的用户可能不知道如何添加它),还有哪些替代方案?