Два способа принудительного использования версии Java для источника и цели - PullRequest
0 голосов
/ 07 мая 2018

Для Java-проекта на основе Maven я видел два способа принудительного использования определенной версии Java в исходном и целевом файлах POM.

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>10</maven.compiler.source>
    <maven.compiler.target>10</maven.compiler.target>
</properties>

... и ...

<build>
    <pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
        <plugins>
            …
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.7.0</version>
                <configuration>
                    <source>10</source>
                    <target>10</target>
                </configuration>
            </plugin>

Зачем мне использовать один или другой?

Ответы [ 2 ]

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

Простой способ заключается в использовании меню настроек в вашем ide. Например, в Intelij IDEA вы можете зайти в File / Settings / Build, Execution, Deployment / Compiler / Java compiler и выбрать в правой панели предпочтительную версию JDK. По умолчанию «такой же, как уровень языка».

0 голосов
/ 07 мая 2018

это вопрос вкуса и предпочтения. Оба - согласно документации - выполняют по существу одно и то же.

Соглашение, которое я видел, использовало бы использование вместо этого плагина компилятора , поскольку вам даются некоторые гарантии фактического принудительного компиляции конкретной версии.

...