Запуск файла UTF-8 Java на Windows 10 такой же, как на Linux - PullRequest
0 голосов
/ 26 марта 2020

У меня есть проект gradle, который я создал в linux OS. Он содержит несколько 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 Ответ

2 голосов
/ 26 марта 2020

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

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

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

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

apply plugin: 'java'

tasks.withType(JavaCompile) {
    options.encoding = 'UTF-8'
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...