我正在尝试使用动物嗅探器Maven插件来验证代码是否与JDK1.4兼容。以下配置有效:
<plugin>
<groupId>org.jvnet</groupId>
<artifactId>animal-sniffer</artifactId>
<version>1.2</version>
<configuration>
<signature>
<groupId>org.jvnet.animal-sniffer</groupId>
<artifactId>java1.4</artifactId>
<version>1.0</version>
</signature>
</configuration>
</plugin>
然而,这是使用插件的旧org.jvnet
版本。当我尝试使用新的org.codehaus.mojo
版本
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>animal-sniffer-maven-plugin</artifactId>
<version>1.5</version>
<configuration>
<signature>
<groupId>org.jvnet.animal-sniffer</groupId>
<artifactId>java1.4</artifactId>
<version>1.0</version>
</signature>
</configuration>
</plugin>
我收到了错误
[INFO] Failed to resolve artifact.
GroupId: org.codehaus.mojo.animal-sniffer
ArtifactId: java1.4
Version: 1.0
请注意,这是<signature>
部分中引用的工件,而不是插件本身。两个版本都引用了相同的工件,因此我不明白为什么在使用新版本时找不到它。
有没有人在使用新版本时成功配置此插件?
使用CodeHaus的签名:
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.4</source>
<target>1.4</target>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>animal-sniffer-maven-plugin</artifactId>
<version>1.5</version>
<executions>
<execution>
<id>check-java-version</id>
<phase>verify</phase>
<goals>
<goal>check</goal>
</goals>
<configuration>
<signature>
<groupId>org.codehaus.mojo.signature</groupId>
<artifactId>java14</artifactId>
<version>1.0</version>
</signature>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>