当我使用ant编译Web应用程序时,我收到以下编译器消息:
unclosed character literal
有问题的代码行是:
protected char[] diacriticVowelsArray = { 'á', 'é', 'í', 'ó', 'ú' };
编译器消息是什么意思?
Java通常期望其源文件以UTF-8编码。您是否已设置好编辑器以使用UTF-8编码保存源文件?问题是,如果您使用不同的编码,那么Java编译器会感到困惑(因为您使用的字符在UTF-8和其他编码之间的编码方式有所不同),并且无法解码源代码。
您的Java也可能设置为使用其他编码。在这种情况下,请尝试:
javac -encoding UTF8 YourSourceFile.java
使用Java源代码对文本文件使用UTF编码。
或
使用'\uCODE'
,其中CODE是á,é等的Unicode编号(就像写'á'
的'\u00E1'
一样。]
您可能需要这个:
[使用"
而不是'
字符对我有用。
它也像前面描述的那样工作javac -encoding UTF8
参数。这意味着编译器未使用UTF8编码。