Запуск файла Java UTF-8 в Windows 10 так же, как в Linux

У меня есть проект gradle, который я создал в ОС Linux. Он содержит несколько файлов Java со стандартной кодировкой UTF-8. Один класс содержит строку с символами центральной Европы.

Иногда я использую свой второй компьютер с Windows 10. Когда я хочу правильно запустить этот gradle-проект на win10 через CMD, мне нужно восстановить java-файлы с кодировкой ISO-8859-2 и восстановить строки. Это очень раздражает, и я не нашел способа работать одинаково с обеими системами.

Я попытался:
- JAVA_TOOL_OPTIONS >> -Dfile.encoding = UTF-8 в переменных среды
- CHCP 65001 (до запуска в CMD)
- UTF-8 в настройке языкового стандарта Windows (функция бета-версии W10)

Такие же плохие результаты.

Там в любом случае?

Всего 1 ответ


Одной из альтернатив может быть запись любых нестандартных символов в качестве escape-последовательностей Unicode, например u01D1 . Это заставит файл работать в любом месте без необходимости изменения локальной среды. Вам также не придется беспокоиться о редактировании файла в неправильной среде и сохранении его с неправильным набором символов. Но, конечно, иностранные символы не будут так легко читаемы в файле.

Если ваш файл Gradle содержит иностранные символы, установите переменную среды GRADLE_OPTS :

GRADLE_OPTS="-Dfile.encoding=UTF-8"

Если вы пытаетесь скомпилировать исходные файлы Java с помощью Gradle, вам может потребоваться настроить кодировку для задачи build.gradle файле build.gradle :

apply plugin: 'java'

tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}

Есть идеи?

10000