作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
从我的pom.xml
配置Maven动物嗅探器插件:
<properties>
<animal-sniffer-maven-plugin.version>1.9</animal-sniffer-maven-plugin.version>
</properties>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>animal-sniffer-maven-plugin</artifactId>
<version>${animal-sniffer-maven-plugin.version}</version>
<configuration>
<signature>
<groupId>org.codehaus.mojo.signature</groupId>
<artifactId>java16-sun</artifactId>
<version>1.0</version>
</signature>
</configuration>
<executions>
<execution>
<id>check-java16-sun</id>
<phase>test</phase>
<goals>
<goal>check</goal>
</goals>
</execution>
</executions>
</plugin>
(这是借用了Google Guava的pom.xml
)
今天,我开始从嗅探器插件中得到一个错误:
[ERROR] Failed to execute goal org.codehaus.mojo:animal-sniffer-maven-plugin:1.9:check (check-java16-sun) on project Optimus:
Execution check-java16-sun of goal org.codehaus.mojo:animal-sniffer-maven-plugin:1.9:check failed:
An API incompatibility was encountered while executing org.codehaus.mojo:animal-sniffer-maven-plugin:1.9:check:
java.lang.NoSuchMethodError: java.nio.CharBuffer.subSequence(II)Ljava/nio/CharBuffer;
我没有在我的代码中直接调用 CharBuffer.subSequence(...)
。它可能来自包含的 JAR。我如何找到有问题的类(class)?
最佳答案
建议您在使用 Maven 遇到问题时按如下方式运行它:
mvn -X clean install
**-X**
选项使您能够调试 maven。我也遇到过类似的问题,发现依赖项目不是使用 Java 6 版本构建的。当我使用 Java 6 构建依赖项目时,它工作正常。
所以这个问题是由于 Java 合规性级别而发生的。
关于java - 如何从 Maven animal sniffer 插件中查找错误源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18821440/
我是一名优秀的程序员,十分优秀!