抑制“Picked up _JAVA_OPTIONS”消息

我正在使用_JAVA_OPTIONS为RHEL上的Java设置一些默认值。 它工作正常,但现在每次我启动java我得到以下消息

拿起_JAVA_OPTIONS:-foo -bar -baz

是否可以保留选项但禁止显示此消息。

通过查看相关的源代码( openjdk中的arguments.cpp,第2492行 ),无法控制此消息的输出。

我唯一可以说的是它被打印到stderr 。 因此,您可以将命令包装为将stderr重定向到/dev/null (如果没有其他任何您在stderr上关心的话)。

  • 或者编写一个过滤掉此消息的java包装器脚本。
  • 或者向openjdk项目提交function请求,但这不会解决您的问题。

_JAVA_OPTIONS在哪里设置? 在.bashrc中?

请改用别名,例如

 alias java="`which java` -Dwhatever" 

实际上,没有必要知道它的设置在哪里工作:

 _SILENT_JAVA_OPTIONS="$_JAVA_OPTIONS" unset _JAVA_OPTIONS alias java='java "$_SILENT_JAVA_OPTIONS"'