我到目前为止使用以下代码在Apple MacBook上设置应用程序名称(在"系统"菜单栏的顶部).(实际上,我认为我是从stackoverflow复制的.)
基本上,有一个单独的AppLauncher类,它在为应用程序本身创建一个新的Runnable之前使用System.setProperty()来设置应用程序名称.
工作得很好.
但是,由于我下载并开始使用JDK 1.7,解决方案停止工作 - 我在菜单中获得了Class Name而不是App Name,就像我找到解决方案之前一样.我试着谷歌搜索它,但无济于事.
以下是过去在JDK 1.6下工作的失效代码,简化为相关部分:
public class AppLauncher {
public static void main(String[] args) {
System.setProperty("apple.laf.useScreenMenuBar", "true");
System.setProperty("com.apple.mrj.application.apple.menu.about.name",
"My Application");
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
new MainWindow();
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的建议!
ETA:使用java -Dapple.laf.useScreenMenuBar = true调用仍然有效.将属性设置为Info.plist可能会有效,但我还没有尝试过.
我听说很多人抱怨这个,理所当然.许多MySQL错误消息非常长:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near...
Run Code Online (Sandbox Code Playgroud)
这在仅显示该字符串的前半部分的环境中尤其令人讨厌.所以问题是:是否有可能获得该字符串的较短版本?类似的东西:Syntax error near...- 这是该消息的多汁部分.