«Подобрал JAVA_TOOL_OPTIONS: -javaagent: /usr/share/java/jayatanaag.jar» при запуске интерпретатора Scala

42

При запуске интерпретатора Scala в Ubuntu 14.04 я получаю следующее сообщение, напечатанное как первая строка:

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

Далее следует знакомое сообщение "Добро пожаловать в Scala".

Я беспокоюсь, потому что я не видел этого при запуске Scala раньше - что это значит, опасно и т.д.?

По-видимому, переменная окружения $JAVA_TOOL_OPTIONS установлена ​​на -javaagent:/usr/share/java/jayatanaag.jar - я этого не установил, но что и почему? Могу ли я безопасно отключить его?

Дополнительная информация:

  • недавно установлен Android Studio
  • Слово "ayatana" в имени JAR может указывать на проект Ubuntu Ayatana
  • 1
    Для этого есть ошибка, связанная с Ubuntu: bugs.launchpad.net/ubuntu/+source/jayatana/+bug/1441487
  • 0
    Это действительно не имеет ничего общего с джаятанаагом как таковым; проблема в том, что JVM настаивает на распечатке JAVA_TOOL_OPTIONS, если он установлен. Если env var не установлен, ничего не печатается. Установите его для export JAVA_TOOL_OPTIONS=-DFOOBAR="HelloWorld" , и вы получите это сообщение вместо этого.
Теги:

6 ответов

29
Лучший ответ

Вы можете отключить jayatana только для текущего сеанса оболочки, отключив JAVA_TOOL_OPTIONS следующим образом:

unset JAVA_TOOL_OPTIONS

Таким образом, он все равно будет включен для приложений, которым это необходимо.

  • 0
    где актуально написать это в моем терминале?
  • 0
    да, в вашем терминале перед запуском приложения или в скрипте запуска
Показать ещё 1 комментарий
26

Это происходит, если вы установили 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 не была установлена.

  • 4
    " sudo apt-get install jayatana " - вы имели в виду удаление ? Есть ли способ подавить сообщение, но сохранить программное обеспечение?
  • 1
    Я не хочу, чтобы удалить Джаятана, Есть ли проблемы в будущем?
Показать ещё 6 комментариев
6

Это из-за Jayatana, которая добавлена ​​в Ubuntu 15.04, чтобы включить глобальное меню для приложений Java Swing. Вы можете безопасно удалить это сообщение, введя следующую команду в терминал. Эта команда удалит конфигурацию автозапуска Jayatana.

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

Однако удаление этой опции отключит поддержку глобального меню приложений Java Swing, таких как Netbeans, IntelliJ IDEA. Я поделился своим обходным путем, чтобы подавить сообщение, не потеряв глобальное меню в этой статье: Поддержка глобального меню для приложений Java

2

В Windows, установить JAVA_TOOL_OPTIONS =

Установка в null приведет к удалению из среды.

0

Если вы используете ОС Windows, переходите в переменные окружения и удаляете или устанавливаете нулевую переменную JAVA_TOOL_OPTIONS.

0

Если вы не хотите удалять что-либо, вы можете создать хранилище ключей из терминала:

keytool -keystore clientkeystore -genkey -alias anyalias

(вы должны создать его у старшего проекта)

И затем в Android Studio нажмите Build- > Generate Signed APK и выберите созданное хранилище ключей.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню