我正在从一个java应用程序(也是无头可运行的jar)启动一个可运行的jar。
尝试了Runtime.getRuntime().exec()
和ProcesBuilder
方法。这个过程很好地启动了,但是在Mac(10.6)上它显示了我在主菜单栏中启动的jar的名称,并且还放入了Dock中有没有办法防止这种情况?有趣的是,如果从命令行启动带有java -jar的jar,则jar名称不会出现在菜单栏或进程dock中。
有任何想法吗?
谢谢
安迪
答案 0 :(得分:27)
要全局启用它而不是为每个进程添加选项,请在.bashrc / .zshrc启动脚本中设置这样的JAVA_TOOL_OPTIONS变量。
export JAVA_TOOL_OPTIONS =' - Djava.awt.headless = true'
参考此处:
http://docs.oracle.com/javase/7/docs/webnotes/tsg/TSG-VM/html/envvars.html
答案 1 :(得分:8)
您是否正在通过java.awt.headless=true
?尝试将此添加到您的流程中:
java -Djava.awt.headless=true