Компиляция муравья: открытый символьный литерал - PullRequest
2 голосов
/ 08 августа 2011

Когда я компилирую свое веб-приложение с помощью ant, я получаю следующее сообщение компилятора:

unclosed character literal

Строка нарушающего кода:

protected char[] diacriticVowelsArray = { 'á', 'é', 'í', 'ó', 'ú' };

Что означает сообщение компилятора?

Ответы [ 2 ]

6 голосов
/ 08 августа 2011

Java обычно ожидает, что его исходные файлы будут закодированы в UTF-8.У вас есть редактор, настроенный на сохранение исходного файла в кодировке UTF-8?Проблема в том, что если вы используете другую кодировку, то компилятор Java будет сбит с толку (поскольку вы используете символы, которые будут кодироваться по-разному в кодировке UTF-8 и других кодировках) и не сможет декодировать ваш источник.

Также возможно, что ваша Java настроена на использование другой кодировки.В этом случае попробуйте:

javac -encoding UTF8 YourSourceFile.java
2 голосов
/ 08 августа 2011

Используйте кодировку UTF для текстовых файлов с вашими исходниками Java.

или

Используйте '\uCODE', где CODE - это номер Unicode для á, é и т. Д. (Например, для 'á' вы пишете '\u00E1').

Вам может понадобиться это:

http://www.fileformat.info/info/unicode/char/e1/index.htm

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...