Stop Java Coffee Cup icon from appearing in the Do

2019-03-08 03:06发布

After upgrading to OSX 10.8.4, background Java processes started placing a Java Cup icon in the Dock. It causes the currently active window to loose focus which is very annoying when running some script that forks many short running Java processes (headless). The file menu (top of the screen next to the apple symbol will show the name of the class file that Java is running, e.g. org.apache.hadoop.util.RunJar).

Since I'm not explicitly launching these Java commands, I've tried putting alias java="java -Djava.awt.headless=true" in .profile but this doesn't seem to help.

Has anyone run into this and know how to fix it?

Thank you.

4条回答
迷人小祖宗
2楼-- · 2019-03-08 03:28

You can also put the statement into the project-level or global gradle.properties file

systemProp.apple.awt.UIElement=true
查看更多
别忘想泡老子
3楼-- · 2019-03-08 03:42

Try -Dapple.awt.UIElement="true"

查看更多
Fickle 薄情
4楼-- · 2019-03-08 03:46

Like @EGHM said, it's -Dapple.awt.UIElement=true, but with no quotes. At least it works for me (OS X 10.7.5).

If you happen to be using Eclipse, you can add this JVM argument globally in Preferences → Installed JREs:

enter image description here

查看更多
甜甜的少女心
5楼-- · 2019-03-08 03:47

Like @EHGM and @Nelson pointed out, -Dapple.awt.UIElement=true needs to be added as an argument to the JVM.

You can set it globally for all java applications launched from the command line (or a shell) by adding it to the JAVA_TOOL_OPTIONS environment variable.

export JAVA_TOOL_OPTIONS="-Dapple.awt.UIElement=true"

You could add the export statement to your $HOME/.bashrc or whatever startup script relevant to the shell you're using.

查看更多
登录 后发表回答