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

时间:2014-09-27 12:00:43

标签: java scala ubuntu

在Ubuntu 14.04中运行Scala解释器时,我将第一行打印出以下消息:

Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar 

随后是熟悉的“欢迎来到Scala”消息。

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

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

其他信息:

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

7 个答案:

答案 0 :(得分:31)

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

unset JAVA_TOOL_OPTIONS

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

答案 1 :(得分:27)

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

sudo add-apt-repository ppa:danjaredg/jayatana
sudo apt-get update
sudo apt-get install jayatana

将JAR放在/usr/share/java/文件夹中,该文件夹在启动时由JVM回显。

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

sudo apt-get remove jayatana

您可能需要删除:

/usr/share/upstart/sessions/jayatana.conf 

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

答案 2 :(得分:6)

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

sudo rm /usr/share/upstart/sessions/jayatana.conf

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

答案 3 :(得分:2)

在Windows上, 设置JAVA_TOOL_OPTIONS =

设置为null将从环境中删除它。

答案 4 :(得分:1)

对于那些正在使用Groovy脚本处理错误并使用另一个控制台(例如Git Bash)的人,请为JAVA_TOOL_OPTIONS更改变量名JAVA_OPTS

答案 5 :(得分:0)

如果您不想卸载任何内容,可以从终端创建密钥存储区:

keytool -keystore clientkeystore -genkey -alias anyalias

(你应该在项目的forlder上创建它)

然后在Android Studio中点击Build-> Generate Signed APK并选择创建的密钥库。

答案 6 :(得分:0)

如果您使用的是Windows操作系统,请转到环境变量并删除或​​设置为null变量JAVA_TOOL_OPTIONS。