Почему я получаю не отображаемый символ для кодировки UTF-8, когда я изменил плагин компилятора Java Java с 1.5 до 1.6? - PullRequest
7 голосов
/ 26 августа 2011

У меня есть проект Java, и я использую Apache Maven. Все это время я использовал плагин Java-компилятора Maven с параметрами source = 1.5 и target = 1.5 , определенными в файле pom.xml. Поскольку я изменил его на source = 1.6 и target = 1.6 , я получаю следующую ошибку:

XXXXXXXX.java: [54,27] не отображаемый символ для кодировки UTF-8

Я тестировал различные конфигурации и включил showWarnings в значение true , чтобы я мог видеть это со значением 1.5 для source и target это предупреждение, а не ошибка.

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

1 Ответ

12 голосов
/ 26 августа 2011

Мой вопрос: почему это ошибка с источником = 1,6 и целью = 1,6, а это предупреждение с источником = 1,5 и целью = 1,5?

Короткий ответ, потому что они так сказали :

-источник 1.6 Это значение по умолчанию.В Java SE 6 не было внесено никаких изменений языка. Однако ошибки кодирования в исходных файлах теперь сообщаются как ошибки, а не предупреждения, как ранее .

@ Проблемы DaveG действительны, и вы должны попытаться:

  • Изменить кодировку файлов ваших исходных файлов
  • найти / заменить эти символы на IDE
...