我在我的项目中将jdk更改为9版本然后碰撞错误:
Error:java: java.lang.NoClassDefFoundError: javax/annotation/Generated
我尝试通过向 pom.com 添加以下内容来解决它,但它对我不起作用:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${version.compiler.plugin}</version>
<configuration>
<!-- fork is needed so compiler args can be used -->
<fork>true</fork>
<compilerArgs>
<arg>-J--add-modules</arg>
<arg>-Jjava.annotations.common</arg>
</compilerArgs>
</configuration>
</plugin>
有没有其他办法解决?
最佳答案
将包含您需要的类的 Artifact 添加到类路径。
看来 javax.annotation API 正是您所需要的。参见 https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api/1.3.2了解详情。您可以将以下依赖项添加到您的项目中,并且它应该存在:
<!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api -->
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
</dependency>
记得删除编译器参数!
关于java - 如何解决java.lang.NoClassDefFoundError : javax/annotation/Generated?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48238014/