others-how to solve NoSuchMethodError: 'java.lang.String javax.annotation.Resource.lookup()'
Problem
When we use @Resource in java projects, sometimes, we get this error:
java.lang.NoSuchMethodError: 'java.lang.String javax.annotation.Resource.lookup()'
Environment
- java
- Intellij IDEA
Reason
Tomcat 6.0 or later has included this jar package.
Solution
Solution #1:
Add the following dependencies:
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
</dependency>
Solution #2:
Not verified, but you can try:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<release>9</release>
<compilerArgs>
<arg>--add-modules</arg>
<arg>java.xml.ws.annotation</arg>
</compilerArgs>
</configuration>
</plugin>