如何修复“拾取_JAVA_OPTIONS:Linux 上未列出选项”?

如何修复“拾取_JAVA_OPTIONS:Linux 上未列出选项”?

此问题出现在 Manjaro Deepin 15.9 linux DE 上。当我在终端中运行 java -version 时,它输出以下内容:

Picked up _JAVA_OPTIONS:    
java version "11.0.2" 2019-01-15 LTS     
Java(TM) SE Runtime Environment 18.9 (build 11.0.2+9-LTS)    
Java HotSpot(TM) 64-Bit Server VM 18.9 (build 11.0.2+9-LTS, mixed mode)

但是如果使用 sudo 运行该命令,它会正常输出没有留言Picked up _JAVA_OPTIONS:

我通过将未设置的 JAVA_OPTIONS 放置在 中进行管理/etc/environment/etc/profile~.bashrc从终端中删除消息。但当我运行项目时,该消息仍然显示在 Netbeans 中。

另外,我以 sudo 身份运行 Netbeans 只是为了检查它是否会显示,但它没有。我尝试从 Linux 中删除一些我不需要或认为导致该消息的软件(因为我读了一些关于软件问题的帖子),但没有任何改变。

sudo 中未显示的消息让我相信 root 用户可能没有安装普通用户所安装的东西,从而产生此消息。

此消息在可启动 USB 上的 Manjaro Deepin 实时预览中可见!

答案1

我知道这是一个老问题,但万一以后有人遇到这个问题......

TL;DR 你无法抑制此消息。看https://stackoverflow.com/a/13863175/4797233的替代方案。

但为什么只是偶尔出现呢?当您更改用户时,sudo您的环境也会更改,显然该_JAVA_OPTIONS变量在 root 用户的环境中不存在。当您从自己的环境中删除该变量时,它也会消失。但是,Netbeans 可以在创建 Java 子进程之前根据需要调整环境,并且配置为添加此变量,无论该变量是否存在。您应该能够将 Netbeans 配置为根本不添加该变量,但具体步骤取决于您的 Netbeans 版本。

答案2

查找environment.dprofile.d目录中的所有文件。

使用此命令检查在哪个文件中设置了该变量。对于我的系统,它是在文件中设置的 95kali-themes.conf

我使用 grep 命令检查它可能存储在哪个目录中,并在environment.d目录中找到了它:

grep "JAVA" /etc/environment.d/*

我的建议是检查在终端初始化期间获取的配置文件所在的所有位置。

相关内容