Подавление сообщения Picked up _JAVA_OPTIONS

Я использую _JAVA_OPTIONS, чтобы установить некоторые значения по умолчанию для Java в RHEL. Он работает нормально, но теперь каждый раз, когда я запускаю java, я получаю следующее сообщение

Подобраны _JAVA_OPTIONS: -foo -bar -baz

можно ли сохранить параметры, но отключить отображение этого сообщения.


person Carcophan    schedule 27.07.2012    source источник
comment
попробуйте определить _JAVA_OPTIONS="-Djava.io.tmpdir=$HOME/tmp" как переменную среды. Источник   -  person Eliran Malka    schedule 27.07.2012
comment
Это по-прежнему показывает сообщение «Поднят», например: JAVA_OPTIONS="-Djava.io.tmpdir=$HOME/tmp" java дает мне Picked up _JAVA_OPTIONS: -Djava.io.tmpdir=/home/foouser/tmp   -  person Carcophan    schedule 27.07.2012
comment
Я пометил его как движущийся, так что надеюсь, что он когда-нибудь там окажется.   -  person Carcophan    schedule 27.07.2012
comment
извините, я ничем не помог, и удачи в исправлении.   -  person Eliran Malka    schedule 27.07.2012
comment
Я повторно задал и ответил на вопрос о суперпользователе, надеюсь, он будет полезен.   -  person flying sheep    schedule 21.04.2013
comment
Не ставьте здесь пароли. Скорее используйте это для общих параметров, а пароли следует передавать в качестве параметров скриптов.   -  person Jus12    schedule 26.09.2015


Ответы (2)


Из соответствующего исходного кода (arguments.cpp в openjdk, строка 2492), невозможно контролировать вывод этого сообщения.

Единственное, что я могу сказать, это то, что он печатается в stderr. Таким образом, вы можете обернуть свои команды для перенаправления stderr в /dev/null (если на stderr вас больше ничего не заботит).

  • Или напишите скрипт-оболочку java, который отфильтрует это сообщение.
  • Или отправьте запрос функции в проект openjdk, хотя это не решит вашу насущную проблему.
person jtahlborn    schedule 13.12.2012
comment
синтаксис для подавления вывода параметров: superuser.com/questions/585695/ - person michael; 06.05.2015
comment
bugs.openjdk.java.net/browse/JDK-8039152 не будет исправить - person Vadzim; 21.11.2016

Где устанавливается _JAVA_OPTIONS? В вашем .bashrc?

Вместо этого используйте псевдоним, например.

alias java="`which java` -Dwhatever"

На самом деле, не обязательно знать, где он устанавливается, чтобы это работало:

_SILENT_JAVA_OPTIONS="$_JAVA_OPTIONS"
unset _JAVA_OPTIONS
alias java='java "$_SILENT_JAVA_OPTIONS"'
person David Martin    schedule 13.12.2012
comment
На самом деле это не отвечает на вопрос. знак равно - person Jan.; 13.12.2012
comment
Он устанавливается как часть скрипта-оболочки, который запускает Java с разумным минимальным объемом памяти, если параметры еще не установлены. Поэтому я не думаю, что смогу использовать это решение. - person Carcophan; 13.12.2012
comment
@ Ян, да, так и есть, как был задан вопрос. Я не знал более глубокого контекста. И это работает для меня, поскольку у меня была такая же проблема, и я решил ее (увидел это нежелательное сообщение при запуске java-программ в bash), поэтому я подумал, что передам его. Может быть, полезно кому-то с моими конкретными обстоятельствами по тому же вопросу. - person David Martin; 14.12.2012
comment
'unset _JAVA_OPTIONS' - это все, что я искал.. - person 7kemZmani; 23.04.2017