Java JAR文件路径中的UTF-8字符

Java JAR文件路径中的UTF-8字符,java,unicode,utf-8,jar,console,Java,Unicode,Utf 8,Jar,Console,我有一个名称中带有Unicode(UTF-8)符号的文件夹,例如,ЯПаПаПаПаа,该文件夹包含foo.jar 现在我需要执行foo.jar: chcp 65001 Active code page: 65001 C:\>java -Dsun.jnu.encode=UTF-8 -jar C:\Я_Папка\foo.jar Error: Unable to access jarfile C:\Я_Папка\foo.jar -Dsun.jnu.encode=UTF-8开关告诉jav

我有一个名称中带有Unicode(UTF-8)符号的文件夹,例如,ЯПаПаПаПаа,该文件夹包含foo.jar

现在我需要执行foo.jar:

chcp 65001
Active code page: 65001

C:\>java -Dsun.jnu.encode=UTF-8 -jar C:\Я_Папка\foo.jar
Error: Unable to access jarfile C:\Я_Папка\foo.jar
-Dsun.jnu.encode=UTF-8开关告诉java对平台字符串使用UTF-8编码

-Dfile.encode=UTF-8开关没有帮助-它只适用于文件内容,而不适用于命令行


我这里的问题是-如何使-jar交换机理解UTF-8编码?

Java在设计上不支持Windows平台上的Unicode(UTF-8)平台字符串。您只能使用在系统语言环境中设置的代码页。

如果您不在俄语语言环境中,您可能应该更改“系统语言环境”设置。我也遇到过同样的问题,请参阅

默认代码页中没有
-D
选项会发生什么情况?默认代码页是Cp1252,太旧,无法理解UTF-8编码。@vlshch您使用的是什么特定的windows版本
chcp 65001
java-jar
在Windows7上运行良好,不过您可能需要更改默认的cmd字体。似乎该问题仅与win 10有关。您所说的“在系统区域设置中设置的代码页”是什么意思?