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