gpt4 book ai didi

java - 捆绑的 Java OS X 应用程序默认为 MacRoman 编码

转载 作者:太空宇宙 更新时间:2023-11-04 07:16:02 24 4
gpt4 key购买 nike

我在 Eclipse 中设置了我的 Java 项目以使用 UTF-8 编码。当我在 IDE 中运行代码时,它以 UTF-8 运行。但是,当我将 Java 项目捆绑到 OS X 应用程序并从那里运行它时,Java 代码将使用 MacRoman 运行,正如 Charset.defaultCharset() 所确认的那样。

如何使捆绑的 OS X 应用程序以 UTF-8 运行?

最佳答案

This answer请注意,字符编码是由 JVM 在启动时确定的。如果从命令行运行,您可以通过添加运行时参数 -Dfile.encoding=UTF-8 来设置 UTF-8 编码。

由于这是在捆绑应用程序中运行,因此您无法在终端中添加此参数。幸运的是,Apple 已经让在启动捆绑应用程序时以替代方式输入上述参数变得非常容易。

首先,使用文本编辑器(TextEdit 有效)打开应用程序包中的 Info.plist 文件(右键单击应用程序并选择“显示包内容”,然后打开“内容”文件夹)。您将看到如下所示的部分:

<key>Java</key>
<dict>
<key>JVMVersion</key>
<string>1.5+</string>
<key>MainClass</key>
<string>com.yourCompanyName.YourApplication</string>
<key>Properties</key>
<dict>
<key>apple.laf.useScreenMenuBar</key>
<string>true</string>
</dict>
<key>VMOptions</key>
<string>-Xmx512m</string>
</dict>

导入部分是<key>Properties</key>部分。如果它不存在,请创建它并 <dict>就在它的下面。在 <dict> 之间添加以下键和值标签:

<key>file.encoding</key>
<string>UTF-8</string>

为了以后的启发,您可以通过这种方式添加任何系统属性。如果您有像本答案开头那样的参数,只需删除前导 -D 即可。 ,将等于号之前的部分放在 <key> 中,以及 <string> 中等于之后的部分.

关于java - 捆绑的 Java OS X 应用程序默认为 MacRoman 编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19971186/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com