我正在创建一个存储在.jar文件中的Java应用程序,可以通过从命令行打开jar文件或单击图标来启动它。
对于应用程序的Mac版本,我希望菜单栏以Mac样式而不是窗口(Windows样式)显示在屏幕顶部。我知道这可以通过命令行完成:
java -jar App.jar -Dcom.apple.macos.useScreenMenuBar=true
但如果用户不知道如何执行此操作,则无效。有没有办法让这个命令行参数“内置”到jar文件中?
答案 0 :(得分:1)
您可以通过在main方法中的代码中设置系统属性或在应用程序的最开始时调用的其他方法来执行此操作:
System.setProperty("com.apple.macos.useScreenMenuBar", "true")
答案 1 :(得分:0)
是否有必要使用命令行执行此操作?您可以使用System.getProperty(“os.name”)在代码中进行检查。
答案 2 :(得分:0)
在我的main方法中,我会使用内置的os.name参数,并且如果没有另外设置,则默认使用命令行参数。
答案 3 :(得分:0)
我建议您将.jar捆绑到标准的mac .app文件中。 然后,在Info.plist中,您可以指定所有类型的运行时项,包括“参数”和“属性”。看看http://developer.apple.com/library/mac/#documentation/Java/Reference/Java_InfoplistRef/Articles/JavaDictionaryInfo.plistKeys.html