在 java 中我们很经常遇到设置编码的地方, 没个地方都要添加非常的麻烦, 有没有可以一次设置全局生效的地方呢?

那就是 JAVA_TOOL_OPTIONS 环境变量了, 该变量可以设置JVM参数,它会被JNI API的JNI_CreateJavaVM函数使用。控制台会有个如下提示信息 ::

Picked up JAVA_TOOL_OPTIONS: ... ...

最经典的用法就是设置字符编码, 命令行中经常遇到控制台打印乱码, 可以通过设置该参数解决:

JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"

当然 window 下面设置环境变量有点区别, 环境变量名: JAVA_TOOL_OPTIONS 环境变量值: -Dfile.encoding=UTF-8

(完)