5

我正在尝试使用 spring boot、maven 和 java 12 创建 Web 应用程序。我使用 spring-boot-starter-parent 版本 2.1.5.RELEASE、java 12 和 maven-compiler-plugin 版本 3.8.1 启动了该项目。我尝试运行 ./mvnw 包,但出现此错误:

致命错误编译:无效的目标版本:12

之后我在互联网上写道,maven 编译器插件使用 asm 的旧依赖项,我应该指定它的新版本。所以我选择了最新版本的 asm,即 7.1,并添加了带有属性版本 12 和 compilerArgs --enable-preview for java 12 的配置标签。结果是:

致命错误编译:无效标志:--release

我尝试的下一件事是使用 spring boot starter 父版本 2.2.0.M3 并指定存储库以从http://repo.spring.io/milestone找到 spring 的里程碑版本。不幸的是我得到了同样的结果。有任何想法吗?

4

1 回答 1

7

尝试使用以前的版本进行 spring boot2.2.0.MX对我来说也失败了,但我设法使它与2.2.0.M6包含一些插件并调整它们以适应预览功能,例如:

       <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <arguments>--enable-preview</arguments>
                    <jvmArguments>--enable-preview</jvmArguments>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.2</version>
                <configuration>
                    <argLine>--enable-preview</argLine>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.8.1</version>
                <configuration>
                    <compilerArgs>--enable-preview</compilerArgs>
                </configuration>
            </plugin>
       </plugins>    

这现在适用于 Java 13。

于 2019-10-03T21:19:31.470 回答