这是一个有点复杂的问题,我可以提供的信息很少,所以请耐心等待或忽略。
我正在开发一个小型 Swing/JOGL 程序,并试图在我的程序中包含一个 java 运行时,以便我可以为我的用户简化 JVM 设置。我的程序正在运行一个批处理文件,该批处理文件调用我打包的 java.exe,而后者又执行我的 jar 文件。
该程序可以正常运行几个小时,然后退出并出现“Microsoft Visual C++ 运行时库”错误:
Runtime Error!
Program: \<path>\java.exe
abnormal program termination
我的问题是:
在我的程序中包含一个 JRE 作为文件夹是否是解决我的问题的“正确”解决方案,即确保运行我的程序的稳定且一致的 JVM?简单地强制我的用户先安装 Java 会更好吗?
通过简单地为我的平台包含 jre 构建的 bin 文件夹,我是否面临任何类型的配置问题?除了在执行 java.exe 时使用命令行选项之外,还有其他方法可以存储配置信息吗?
由于 C++ 错误消息和异常进程终止错误发生的条件,我猜这与我的 JOGL 库有关,但是,该程序在 APT 之前完全正常工作,并且使用完全相同使用在线安装程序的 Java 版本,该程序运行良好,没有错误。
这可能是更基本的东西吗?是否有可能我只是没有正确收集垃圾或没有正确设置 GC 配置,因为我只是使用 JRE 安装的 bin 文件夹?