2016-12-23 243 views
0

我试图在很长时间后生成一个项目,并且出现以下错误。Maven无法解析依赖关系

未能就项目的执行目标以下工件无法解析:

org.restlet.jee:org.restlet:罐子:2.1.7,

org.restlet.jee:组织。 restlet.ext.servlet:罐子:2.1.7,

org.restlet.jee:org.restlet.ext.spring:罐子:2.1.7,

org.restlet.jee:org.restlet。 ext.freemarker:jar:2.1.7,

org.restlet.jee:org.restlet.ext.xml:罐子:2.1.7:

未能找到org.restlet.jee:org.restlet:罐子:2.1.7

http://repo1.maven.org/maven2是在本地仓库缓存,分辨率将不会被重新尝试,直到中央的更新间隔已过或更新强制 - > [求助1]

我的pom.xml具有以下依赖

<dependency> 
    <groupId>org.restlet.jee</groupId> 
    <artifactId>org.restlet.ext.servlet</artifactId> 
    <version>${org.restlet.version}</version> 
</dependency> 

回购定义如下:

<repository> 
     <id>central</id> 
     <name>Maven Plugin Repositoty</name> 
     <url>http://repo1.maven.org/maven2</url> 
    </repository> 

回答

1

要找出在哪里寻找依赖关系,通常只需从网站mvnrepository.com开始。这个网站不仅可以帮助您找出正确的groupId,artifactId和版本,还可以指出您需要的工件的确切位置,因为并非所有工件都位于Maven中心。

在这种情况下,网站会告诉你他们在存储库maven.restlet.org,如果你在浏览器中关注这个网址,你会发现这确实如此。因此,您可以在找到工件之前在您的pom或settings.xml中需要该存储库。

<repositories> 
    <repository> 
    <id>maven.restlet.org</id> 
    <name>maven.restlet.org</name> 
    <url>http://maven.restlet.org</url> 
    </repository>   
</repositories>  

这样做。

2

首先确保这些工件在Maven Central中可用。

然后从您的本地.m2存储库中删除org/restlet/jee文件夹并重新导入。如果这些JAR在Maven Central中可用,它们将再次下载到您当地的.m2。

Here's你可以在Maven Central找到org.restlet.jee。

如果您仍然有问题,你必须做出选择:

  1. 找到另一个回购有你所需要的。
  2. 转到restlet page,手动下载JAR并将它们添加到本地.m2。
  3. 停止使用该库并找到替代方案。
+0

我做了你的建议。我可以在存储库中找到2.1.7。我仍然收到同样的错误。 –

+0

我甚至改变了版本到2.0.0,但我仍然得到 org.restlet.jee的POM:org.restlet.ext.servlet:jar:2.2.0缺失,没有依赖信息可用 下载:http:/ /repo1.maven.org/maven2/org/restlet/jee/org.restlet.ext.spring/2.2.0/org.restlet.ext.spring-2.2.0.pom 但是,您可以看到神器在那里https://maven-repository.com/artifact/org.restlet.jee/org.restlet/2.2.0我有点困惑 –

+1

Maven Central中不存在'org.restlet'。 – khmarbaise

相关问题