首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法生成针对JDK 11的Java项目,目标发行版11无效

无法生成针对JDK 11的Java项目,目标发行版11无效
EN

Stack Overflow用户
提问于 2019-09-28 23:33:51
回答 2查看 4.2K关注 0票数 3

我已经安装了JDK11和Maven 3.6.2,并且正在使用error prone来编译我的Java maven项目。使用此配置:

pom.xml:

代码语言:javascript
复制
<properties>
  <java.version>11</java.version>
  <maven.compiler.source>${java.version}</maven.compiler.source>
  <maven.compiler.target>${java.version}</maven.compiler.target>
</properties>

pom.xml:

代码语言:javascript
复制
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>${maven.compiler.plugin.version}</version>
    <configuration>
        <compilerId>javac-with-errorprone</compilerId>
        <forceJavacCompilerUse>true</forceJavacCompilerUse>
            <useIncrementalCompilation>false</useIncrementalCompilation>

        <compilerArgs>
            <arg>-Xep:ParameterName:OFF</arg>
        </compilerArgs>
        <compilerArguments>
            <endorseddirs>${endorsed.dir}</endorseddirs>
        </compilerArguments>
     </configuration>
     <dependencies>
        <dependency>
          <groupId>org.codehaus.plexus</groupId>
          <artifactId>plexus-compiler-javac-errorprone</artifactId>
          <version>2.8.5</version>
        </dependency>
        <dependency>
          <groupId>com.google.errorprone</groupId>
          <artifactId>error_prone_core</artifactId>
          <version>${google.error.prone.version}</version>
        </dependency>
      </dependencies>
  </plugin>

我得到了这个错误:

CompilerException: InvocationTargetException:无效的目标版本: 11

我尝试遵循以下信息:Unable to compile simple Java 10 / Java 11 project with Maven

但是,升级ASM并没有改变任何事情。

EN

回答 2

Stack Overflow用户

发布于 2020-06-29 18:01:51

根据maven文档:

编译器插件用于编译项目的源代码。从3.0开始,默认编译器是javax.tools.JavaCompiler (如果您使用的是Java1.6),用于编译java源代码。如果你想强制使用javac插件,你必须配置插件选项forceJavacCompilerUse。

还要注意,目前缺省的源设置是1.6,缺省的目标设置是1.6,独立于运行Maven的JDK。强烈建议您通过设置源和目标来更改这些缺省值,如设置Java编译器的-source和-target中所述。

将源和目标更改为11后,如下所示:

代码语言:javascript
复制
<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>11</source>
                    <target>11</target>
                </configuration>
            </plugin>

上面提到的无效java 11版本错误没有出现

票数 0
EN

Stack Overflow用户

发布于 2021-11-08 22:03:14

我放入了属性:1.11,在maven编译器pugin中是这样的: 11 11。它对我有效。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58147824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档