Eclipse-RCP Неверное кодирование при развертывании продукта
Я создаю приложение RCP со многими греческими сообщениями, поэтому все в UTF-8. По мере разработки и тестирования через Eclipse IDE все в порядке.
Когда я развертываю через "Мастер экспорта продуктов Eclipse", полученный exe неправильно отображает греческие буквы.
Я знаю, что мне не хватает чего-то глупого, но я понятия не имею, что. Не могли бы вы помочь?
Ответы
Ответ 1
(скопирован из вопроса - так это показывает, что он имеет ответ)
Я нашел решение, хотя это было не так тривиально, как я ожидал.
Eclipse дает возможность управлять процессом сборки с помощью build.properties, в котором вы можете указать свойство javacDefaultEncoding со следующим значением, например
javacDefaultEncoding.. = UTF-8
Документацию можно найти в справке Eclipse в "Руководство по среде разработки плагинов > Ссылкa > Конфигурация сборки"
Надеюсь, это поможет кому-то.
Ответ 2
Трюк заключается в том, чтобы запустить Eclipse IDE, используя тот же файл .encoding, что и редактор java:
eclipse -vmargs -Dfile.encoding = UTF-8
и
Окно → Настройки... → Общие → Рабочее пространство → Текстовое кодирование → Другое → UTF-8
При экспорте RCP-приложения метки UTF-8 отображаются правильно. Для запуска приложения RCP нет специальных аргументов VM.
С этим вы можете поделиться исходным кодом UTF-8 между Linux и Windows Eclipses.
Ответ 3
При экспорте подключаемого модуля он компилируется в процессе, отличном от обычного процесса сборки в среде IDE. Существует известная ошибка, что процесс сборки (PDE.Build) игнорирует текстовую кодировку, используемую IDE.
Экспорт может быть выполнен для правильной работы, указав текстовую кодировку в файле build.properties вашего плагина
javacDefaultEncoding.. = UTF-8