install4j java内存不足,没有向用户报告错误
作者:互联网
我们遇到的情况是java的内存确实不足,但在使用-console选项运行应用程序之前没有看到任何可见的错误.然后我们在控制台上出现了错误:
Error occurred during initialization of VM
Could not reserve enough space for 2097152KB object heap
应用程序构建为“如果主线程中的异常被抛出则失败,但这似乎没有帮助.
Configuration Image
java版“1.8.0_162”
是否有其他设置可以使这种内存错误更明显?
解决方法:
这样的验证脚本可以验证您想要的内容,并且可以引发弹出窗口,如下面的示例所示(下面的示例检查内核以及内核是否不是所需的版本,而不是通过不支持的通知OS引发的消息):
在您的情况下,更改逻辑以验证是否有足够的内存.
String logfile = "/opt/ServiceStatus" + (String)context.getVariable("sys.version");
PrintWriter writer = new PrintWriter(new FileWriter(logfile, true));
String shellcommand = "uname -a";
Process p = Runtime.getRuntime().exec(shellcommand);
p.waitFor();
BufferedReader buf = new BufferedReader(new InputStreamReader(p.getInputStream()));
String line = "";
String output = "";
while ((line = buf.readLine()) != null)
{
output += line + "\n";
}
if (!output.contains("3.10.0-514.el7.x86_64"))
{
Util.showMessage("OS not suppurted");
writer.println("OS not suppurted: " + output);
writer.close();
return false;
}
writer.println("OS: " + output);
writer.close();
return true;
标签:java,install4j 来源: https://codeday.me/bug/20190705/1388143.html