我一直在努力测试我的代码,但我一直在我的控制台中使用它:
[INFO]扫描项目... [INFO]
[信息] -------------------------------------------------- ---------------------- [INFO]构建SonarQube Java ::检查2.3-SNAPSHOT [INFO] -------------------------------------------------- ---------------------- [警告] POM for org.codehaus.sonar-plugins.java:java-squid:jar:2.3-SNAPSHOT是 缺少,没有可用的依赖信息[INFO] -------------------------------------------------- ---------------------- [INFO] BUILD FAILURE [INFO] -------------------------------------------------- ---------------------- [INFO]总时间:2.791s [INFO]完成时间:5月21日星期三16:18:34 CST 2014 [INFO]最终记忆:9M / 61M [INFO] -------------------------------------------------- ---------------------- [错误]无法在项目java检查上执行目标:无法执行 解决项目的依赖关系 org.codehaus.sonar-plugins.java:java-checks:jar:2.3-SNAPSHOT:可以 找不到神器 org.codehaus.sonar-plugins.java:java-squid:jar:2.3-SNAPSHOT - > [救命 1] [ERROR] [ERROR]要查看错误的完整堆栈跟踪,请重新运行 使用-e开关的Maven。 [错误]使用-X开关重新运行Maven 启用完整调试日志记录[错误] [错误]有关的更多信息 错误和可能的解决方案,请阅读以下文章: [错误] [帮助1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
我的pom.xml是:
<?xml version="1.0" encoding="UTF-8"?> <project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.codehaus.sonar-plugins.java</groupId>
<artifactId>java</artifactId>
<version>2.3-SNAPSHOT</version> </parent>
<artifactId>java-checks</artifactId>
<name>SonarQube Java :: Checks</name>
<dependencies>
<dependency>
<groupId>org.codehaus.sonar</groupId>
<artifactId>sonar-deprecated</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>java-squid</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.sonar.sslr</groupId>
<artifactId>sslr-testing-harness</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
<artifactId>hamcrest-all</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-all</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.easytesting</groupId>
<artifactId>fest-assert</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>
无论如何都要解决这样的错误?
答案 0 :(得分:1)
尝试将其添加为pom.xml中的存储库。在XML元素repositories
中,添加以下内容:
<repository>
<id>sonarplugins</id>
<url>http://repository-sonarplugins.forge.cloudbees.com/snapshot/</url>
</repository>
Maven尝试在java-squid.jar
版本中获取2.3-SNAPSHOT
但它在您的本地存储库,中央Maven存储库和您在POM中指示的存储库中找不到它。我给你的URL是一个包含你需要的工件的公共仓库的URL。它应该工作,除非有其他缺少的依赖项。
还有一件事:你为什么要使用SNAPSHOT lib?你真的确定要这么做吗?