Языковые стандарты Maven и Java в MacOS - PullRequest
0 голосов
/ 04 февраля 2019

Мне нужно построить проект Maven на компьютере MacOS 10.14 с Java 8.

По разным причинам я бы предпочел, чтобы моя система работала с моей «реальной» локалью (то есть с панелью настроек системы).Я должен указать "German" в качестве локали, времени, валюты и числовых форматов), но мне нужно, чтобы мой код был скомпилирован с использованием локали "C".

Я попытался установить локаль с использованием классических средств Unix, таких как переменные среды LANG и LC_ * , а также использование параметров user.language (и т. Д.) Maven .В обоих случаях я потерпел неудачу: мои числа с плавающей запятой выводились с использованием немецкого "," в качестве десятичного разделителя, а mvn --status указывал "de_DE" в качестве локали по умолчанию.

Похоже, macOS обрабатывает настройки локалидля Java немного отличается от Linux.Итак, как я могу получить задание maven, чтобы использовать другой языковой стандарт, нежели остальная система, без

  1. изменения моей кодовой базы (включая pom.xml)
  2. Изменение macOSсистемные настройки?

1 Ответ

0 голосов
/ 05 февраля 2019

FYI: https://maven.apache.org/plugins/maven-compiler-plugin/compile-mojo.html

Чтобы установить языковой стандарт для компиляции, вы можете настроить его с помощью maven-compiler-plugin :

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.0</version>
    <configuration>
        <source>1.8</source>
        <target>1.8</target>
        <fork>true</fork>
        <compilerArgs>
            <arg>-J-Duser.language=de_DE</arg>
        </compilerArgs>
    </configuration>
</plugin>

Чтобы установить языковой стандарт для mavenСамым лучшим способом является использование папки .mvn с jvm.config file:

.mvn
    jvm.config
src
    main
        ...
    test
        ...
pom.xml

jvm.config:

-Duser.language=en -Duser.country=GB

FYI (около .mvnпапка): https://maven.apache.org/docs/3.3.1/release-notes.html

...