使用 64 位 Java VM 运行 ant 会导致无法映射的 UTF-8 字符

发布于 2024-09-30 18:26:05 字数 310 浏览 1 评论 0原文

我的java代码中有一些像这样的特殊字符

 char c = 'ä';

(我知道这是不好的风格,可以通过使用UTF-8代码来避免它,但这不是问题的重点),

而此代码在使用java时编译和运行良好使用像 eclipse 这样的 ide 的 64 位,当我尝试通过 ant 编译它时,我收到此错误:

warning: unmappable character for encoding UTF8

当使用 32 位 java vm 运行 ant 时,没有警告。

there are some special characters in my java code like this

 char c = 'ä';

(i know this is bad style and it could be avoided by using the UTF-8 code, but that's not the point of the question)

while this code compiles and runs fine when using java 64bit from with an ide like eclipse, when i try to compile this via ant i get this error:

warning: unmappable character for encoding UTF8

when running ant with a 32bit java vm there is no warning.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

与君绝 2024-10-07 18:26:05

您需要告诉 javac 您的源文件采用什么编码。您可以使用 javac ant 任务上的 -encoding 标志或编码属性来执行此操作。

坦率地说,只需将源代码保存为 UTF-8 即可。从长远来看,这要简单得多。

You need to tell javac what encoding your source files are in. You can do this with the -encoding flag or encoding attribute on the javac ant task.

Frankly, just save your source as UTF-8. It's much simpler in the long run.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文