Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
intellij/maven如何确定哪个版本映射到pom.xml文件中的值jdk.version?_Maven_Intellij Idea_Maven Plugin - Fatal编程技术网

intellij/maven如何确定哪个版本映射到pom.xml文件中的值jdk.version?

intellij/maven如何确定哪个版本映射到pom.xml文件中的值jdk.version?,maven,intellij-idea,maven-plugin,Maven,Intellij Idea,Maven Plugin,在其中一个pom文件中,我有以下内容 <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version>

在其中一个pom文件中,我有以下内容

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>${jdk.version}</source>
                    <target>${jdk.version}</target>
                    <phase>prepare-package</phase>
                </configuration>
            </plugin>

org.apache.maven.plugins

并在项目结构页面上解析为语言级别14

尽管我一直将其设置为8,但在一些构建之后,它将自己设置回14,尽管我的默认编译器设置为8,而且我在intellij上的编译器列表中甚至没有编译器版本14

这就引出了两个问题:

  • intellij或maven从哪些系统变量读取,从而提示他们将语言级别连续设置为14
  • 我如何改变它,使其保持在8?由于业务原因,我无法更改pom.xml文件中的条目

  • Maven从哪里读取
    ${jdk.version}
    ?这是POM中的财产吗?还是
    settings.xml
    ?或者它是在命令行上指定的?您能否成功地从命令行
    mvn clean compile
    ?看起来,
    ${jdk.version}
    没有在任何地方定义,因此IDE无法解决它。@JFabianMeier关于“maven从何处读取
    ${jdk.version}
    的问题,如果您是指在我的代码中使用的属性在何处,是的,它在pom文件中的指定正是我上面列出的方式。如果你的意思是maven如何知道最终的版本,我不知道,这就是我在这篇文章中试图弄明白的。我看不到它在命令行的任何地方被指定arguments@Andrey我现在可以,因为几天前我将语言级别改为8,intellij还没有将其恢复为14。当intellij再次进行恢复时,我会通知您是否可以。