java - Maven 编译器插件 不支持的类文件主要版本 60
问题描述
我正在更新一个 Spigot (Minecraft) 插件,最新版本的 Spigot 需要 Java 16。在我的 pom 中,我将 maven 编译器插件目标更改为 16,而源代码仍然是 1.8。现在我收到以下错误:
Failed to execute goal org.apache.maven.plugins:maven-shade-plugin:3.2.4:shade (default) on project Plugin: Error creating shaded jar: Problem shading JAR C:\Users\Trent\workspace\Stocks\Plugin\target\Plugin-1.0-SNAPSHOT.jar entry com/tchristofferson/stocks/commands/StockbrokerCommand.class: java.lang.IllegalArgumentException: Unsupported class file major version 60
起居室:
<?xml version="1.0" encoding="UTF-8"?>
4.0.0
<groupId>com.tchristofferson</groupId>
<artifactId>Stocks</artifactId>
<packaging>pom</packaging>
<version>1.0-SNAPSHOT</version>
<modules>
<module>API</module>
<module>Plugin</module>
</modules>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<configuration>
<source>1.8</source>
<target>16</target>
<release>16</release>
</configuration>
</plugin>
</plugins>
</build>
<distributionManagement>
<snapshotRepository>
<id>ossrh</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<repository>
<id>ossrh</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
</repository>
</distributionManagement>
解决方案
@wemu 是正确的,maven shade 插件还不支持 Java 16。为了解决这个问题,我不得不使用 maven shade 插件(3.3.0-SNAPSHOT)的快照版本,因为 3.2.4 不支持 Java 16然而。
推荐阅读
- c# - 我应该让我的应用程序成为服务还是控制台应用程序?
- python - 使用 keras 输出图像 - 如何指定输出层的形状。输入图像和输出图像尺寸为(210,210,3)
- ssrs-2012 - 使用 .Net Core 3.1 MVC 应用程序进行 SSRS 报告
- javascript - 重新加载后 WordPress Gutenberg Block 无法正常工作
- r - R中Windows 10的并行包
- git - Azure DevOps Pipeline 仅在特定标记上运行
- elasticsearch - 如何重命名 Elasticsearch 中的字段?
- python - 通过 HParams 和 Tensorboard 进行贝叶斯优化
- java - java.util.NoSuchElementException:尝试检查 emailID 是否在 POSTGRES 数据库中注册时抛出不存在值异常
- postgresql - 使用 psql 接口设置数组