我在项目中将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>
还有其他解决方法吗?
将包含所需类的工件添加到类路径。
似乎(未经测试)您需要的是javax.annotated API。有关详细信息,请参见https://mvnrepository.com/artifact/javax.annotation/javax.annotation- api/1.3.1。您可以将以下依赖项添加到项目中,就像其他任何依赖项一样,它应该存在:
<!-- https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api --> <dependency> <groupId>javax.annotation</groupId> <artifactId>javax.annotation-api</artifactId> <version>1.3.1</version> </dependency>
记住要删除编译器参数!