当我在 Windows 10 上打开 Android Studio 时,我收到此警告:
检测到使用Java选项环境变量。这样的变量 覆盖 IDE 配置文件 (*.vmoptions) 并可能导致 性能和稳定性问题。请考虑删除这些 变量:JAVA_TOOL_OPTIONS。
所以,我想删除这个变量,但我不知道如何删除。 这个类似的查询对我没有帮助,因为我在系统变量中没有看到这个变量。我怀疑我在排除另一个问题时一定是通过命令行设置的。启动任何 IDE 的控制台时,都会出现消息:
选择了 JAVA_TOOL_OPTIONS:-Dfile.encoding=UTF8
也显示。可以通过某种方式删除吗?
正如其他问题中提到的,如果在声明
java
环境变量时启动任何 JAVA_TOOL_OPTIONS
进程,您会收到该警告。 Windows Android Studio 启动日志中提到了这一点,如果您从终端/cmd.exe 运行 java -version
,也会提到这一点。
删除之前首先检查您是否需要这些附加设置。设置
-Dfile.encoding=UTF8
是 JDK19 及以上版本的默认设置,但不适用于早期的 JDK,并且进行修复以避免 Android Studio 警告可能会导致 JDK19 之前的其他基于 Java 的应用程序在其他地方发生意外更改。
我知道可以定义它的两个地方:
设置>系统>关于>高级系统设置->环境变量:
删除用户设置或系统设置下的
JAVA_TOOL_OPTIONS
值。
可以通过重新输入对话框或键入命令来重新添加此设置:
setx JAVA_TOOL_OPTIONS blah
。
更改环境变量后,不要忘记关闭/重新打开 Windows 终端或 CMD.EXE,否则他们将看不到新值。
作为 CMD.EXE 中的局部变量。此设置可能已由某些初始化脚本(例如,如果您使用
CMD.EXE /k init.cmd
)调用 set JAVA_TOOL_OPTIONS=blah
添加,并且此覆盖/替换 1) 值。
您可以使用
set JAVA_TOOL_OPTIONS=
删除并从该 CMD 重新运行 java 或 Android Studio,但请注意,如果已在 1) 中设置,则在关闭/重新打开 CMD 后将恢复原始值。
毫无疑问,有一种更简单的方法可以做到这一点,因为它会添加一个空白的 cmd 终端:如果您希望仅禁用 Android Studio,您可以设置一个替代的 Windows 快捷方式,并将其用作“目标”字段(不要添加任何额外的内容)空格):
cmd.exe /c set JAVA_TOOL_OPTIONS=&&"C:\Program Files\Android\Android Studio\bin\studio64.exe"
注:
setx VARNAME NEWVALUE
不需要“=”符号。set VARNAME=NEWVALUE
需要“=”符号终端类型; printenv 查看环境变量。慢慢向下滚动,您将看到 _JAVA_OPTIONS 类型; 取消设置_JAVA_OPTIONS 然后 最后输入 printenv,您将不再在那里看到它。 在启动 pycharm 之前重新启动您的电脑。