Tag: 空气

如何在OS X上全局设置java系统属性?

短篇故事 我需要一种系统级方法来为所有java调用将java.awt.headless属性设置为true 。 也就是说,使用-Djava.awt.headless=true不是一个选项,因为java是从我无法访问的地方调用的(例如来自用Java / C /等编写的另一个工具)。 很长的故事 我正在使用一堆用Java编写的工具(特别是Adobe的Air ADT),这些工具依赖于AWT类。 当我在控制台上运行这些工具时,它们工作正常。 但是当我从SSH会话中运行它们时,它们会失败并出现java.lang.InternalError: Can’t connect to window server – not enough permissions 。 谷歌搜索我发现将java.awt.headless设置为true将解决问题。 它没有,这是因为ADT本身在没有 -Djava.awt.headless=true 情况下生成子Java进程。 是否有任何系统级方法来确保在调用Java时设置此属性? 也许一些系统awt属性文件或等价物? 最糟糕的情况我可以尝试使用shell脚本替换/usr/bin/java ,将此参数添加到”$@”但我希望避免这种情况。 (更新:为了确保我的理论是正确的,尝试这个shell脚本破解它确实解决了问题。只是希望有一个更清洁的解决方案)