启动Scala解释器时"拾起JAVA_TOOL_OPTIONS:-javaagent:/usr/share/java/jayatanaag.jar"

cor*_*zza 43 java ubuntu scala

在Ubuntu 14.04中运行Scala解释器时,我得到以下消息作为第一行打印:

Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar 
Run Code Online (Sandbox Code Playgroud)

接下来是熟悉的"欢迎来到Scala"消息.

我很担心,因为我之前没有看到过在运行Scala时 - 它是什么意思,它是危险的等等吗?

显然环境变量$JAVA_TOOL_OPTIONS设置为-javaagent:/usr/share/java/jayatanaag.jar- 我没有设置,但是做了什么以及为什么?我可以安全地取消它吗?

附加信息:

  • 最近安装了Android Studio
  • JAR名称中的"ayatana"一词可能指向Ubuntu的项目Ayatana

Kim*_*bel 31

您可以通过取消设置来禁用当前shell会话的jayatana JAVA_TOOL_OPTIONS:

unset JAVA_TOOL_OPTIONS
Run Code Online (Sandbox Code Playgroud)

这样它仍然会为需要它的应用程序启用.


Ric*_*zaк 27

如果您安装了jayatana,它允许eclipse中隐藏的全局菜单与Unity一起使用,则会发生这种情况:

sudo add-apt-repository ppa:danjaredg/jayatana
sudo apt-get update
sudo apt-get install jayatana
Run Code Online (Sandbox Code Playgroud)

将JAR放在/usr/share/java/JVM在启动时回显的文件夹中.

如果删除该软件,则不会看到以下消息:

sudo apt-get remove jayatana
Run Code Online (Sandbox Code Playgroud)

您可能必须删除:

/usr/share/upstart/sessions/jayatana.conf 
Run Code Online (Sandbox Code Playgroud)

并重新启动会话,以便JAVA_TOOL_OPTIONS不设置环境变量.

  • *"`sudo apt-get install jayatana`"* - 你的意思是**卸载**?有没有办法*抑制*消息,但保留软件? (4认同)
  • 建议移动一个可能有一些好处的装置,而不说为什么可能导致它的结果是一个问题.我宁愿接受通知而不是放弃可能重要的功能.对于公然删除软件会产生什么后果有什么想法? (2认同)
  • @LDJames如果删除jayatana,基于java swing的应用程序(至少)的菜单(如eclipse和intellij)将移回应用程序的窗口. (2认同)

Gob*_*ath 6

这是因为Jayatana被添加到Ubuntu 15.04中,以便为Java Swing应用程序启用全局菜单.您可以通过在终端中输入以下命令来安全地删除此消息.此命令将删除Jayatana的自动启动配置.

sudo rm /usr/share/upstart/sessions/jayatana.conf
Run Code Online (Sandbox Code Playgroud)

但是,删除此选项将禁用Java Swing应用程序(如Netbeans,IntelliJ IDEA)的全局菜单支持.我已经共享了我的解决方法来抑制消息而不会丢失本文中的全局菜单:Java应用程序的全局菜单支持