MacOS中的Maven和Java语言环境

时间:2019-02-04 16:26:48

标签: java macos maven locale

我需要在具有Java 8的macOS 10.14机器上构建一个Maven项目。

出于各种原因,我希望我的系统使用“真实的”语言环境(即,我的系统设置面板应列出“德语”作为语言环境,时间,货币和数字格式),但是我需要我的代码使用“ C”语言环境进行编译。

我尝试使用经典的Unix方式(例如LANG and LC_* environment variables)以及user.language (etc.) maven options来设置语言环境。在这两种情况下,我都不成功:我的浮点数使用德语“,”作为小数点分隔符,并且mvn --status列出了“ de_DE”作为默认语言环境。

似乎macOS处理Java的语言环境设置与Linuxes有所不同。因此,如何在不使用

的情况下获得Maven作业以使用与系统其余部分不同的语言环境
  1. 更改我的代码库(包括pom.xml)
  2. 更改macOS的系统设置吗?

1 个答案:

答案 0 :(得分:0)

仅供参考: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 文件一起使用:

.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