Почему я получаю unmappable символ для кодирования UTF-8, когда я изменил maven java компилятор плагин от 1,5 до 1,6?
У меня есть проект Java, и я использую Apache Maven. Все это время я использовал плагин компилятора Maven Java с параметрами source = 1.5 и target = 1.5, определенными в файле pom.xml. Поскольку я изменил его на source = 1.6 и target = 1.6, я получаю следующую ошибку:
XXXXXXXX.java: [54,27] unmappable символ для кодирования UTF-8
Я тестировал разные конфигурации, и я переключил showWarnings на значение true, чтобы я мог видеть, что со значением 1.5 для источника и цели это предупреждение, а не ошибка.
Мне нужно изменить конфигурацию компилятора Java. Кто-нибудь знает, почему это так, и как я могу решить эту проблему без редактирования всех исходных файлов Java (есть сотни файлов с этой проблемой сейчас)?
Ответы
Ответ 1
Мой вопрос: почему это ошибка с источником = 1.6 и target = 1.6 и это предупреждение с источником = 1.5 и target = 1.5?
Short anwser, потому что они сказали так:
-source 1.6 Это значение по умолчанию. Никаких языковых изменений не было введенных в Java SE 6. Однако ошибки кодирования в исходных файлах теперь сообщается как ошибки, а не предупреждения, как ранее.
Проблемы @DaveG действительны, и вы должны попробовать:
- Измените кодировку файлов исходных файлов
- найти/заменить эти символы вашей IDE