deployment - 检查系统上的 JRE

标签 deployment installation java

我有一个现有的 Java 程序,我正在将其提供给一些……不太懂技术的客户。他们使用Linux、Windows的组合,很少有苹果机器,这就是为什么我选择Java来开发程序。问题是当他们尝试启动程序时,他们不断地给我打电话,告诉我错误,因为他们没有安装了 JRE。有没有办法:

  1. 导入一个库,该库将为我提供某种要检查的命令。
  2. 向程序中添加一些内容来检查 JRE。 或者(我真的不想这样做,因为我首先选择了 java)
  3. 用 C++ 编写一些代码来检查 JRE。

我的目标:

  1. 检查机器上是否安装了 JRE
  2. 如果是:启动程序
  3. 如果没有:弹出一条消息“未找到 Java 环境,从 Java 网站下载”。然后我会直接将他们带到他们点击“运行”并安装的链接。

//我会做类似的事情

if (JRE.exists()) // maybe use a pathname that would only show up if a JRE is installed
{
    // launch program
}
else
{
    // launch Java installer
}
system.exit(0);

我知道这在 java 中确实很难(因为没有 JRE 就无法运行 Java 程序),但如果可能的话,我更愿意保持这种通用性。

如果没有简单的修复方法,我只会制作一个自述文件,其中包含指向检查系统上的 JRE 的 java 网站的链接,但用户要做的工作量越少越好.

最佳答案

我建议您使用 Java 安装程序,例如 IzPack 或其他此类免费工具。使用其中之一,您可以创建安装程序并生成 native 启动器。可以对其进行配置,例如搜索 Java,如果找不到,它可以帮助用户安装它。

有些开发人员还使用 JSmooth 或 Launch4J 作为 native 启动器。

关于deployment - 检查系统上的 JRE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12110299/

相关文章:

google-chrome - Chromium 的自定义安装程序

linux - 如何安装memusg Linux工具

java - 将字符串转换为对象名称。 IE。 R.string.对象名

java - 动态类加载时运行时注释扫描

javascript - Angular Uncaught( promise ): ChunkLoadError: Loading chunk XXXfailed

php - 部署策略,PHP + SVN

ruby-on-rails - Rails 5 部署到 VPS - capistrano 错误 "Don' 不知道如何构建任务 'deploy:setup' "

windows - 在离线 Windows 机器上安装 Python 包(numpy、scipy、statsmodels 等)

sql - 什么是 SSIS 包部署和更改跟踪最佳实践?

java - 无法使用spring和hibernate集成自动创建表并插入记录