当前位置: 首页 > 知识库问答 >
问题:

Maven依赖项引用不存在的库

隆谦
2023-03-14

如上所述,我对maven有一个问题。在我当前的eclipse项目中,我使用maven进行依赖性管理,直到现在,它仍然运行良好。

该项目不再有效,并声明:

Maven Dependencies references non existing library: 
  c:\.m2\repository\org\eclipse\lyo\oslc4j\core\oslc4j-core\1.1\oslc4j-core-1.1.jar'

如果我检查文件夹,就会发现一些文件与jar同名,但以jar结尾。最后更新。

我尝试了maven clean和maven update,但没有成功。我的pom中的线条。xml标记为红色,表示:

Missing artifact org.eclipse.lyo.oslc4j.core:oslc4j-core:jar:1.1

这是我的pom的内容。xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/www.w3.org2001XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.or/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>rtc_oslc_common</groupId>
<artifactId>rtc_oslc_common</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
  <sourceDirectory>src</sourceDirectory>
  <plugins>
    <plugin>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>2.3.2</version>
      <configuration>
        <source>1.6</source>
        <target>1.6</target>
      </configuration>
    </plugin>
  </plugins>
</build>

这一块是一个有标记的块,它表示工件缺失。

<dependencies>
  <dependency>
    <groupId>org.eclipse.lyo.oslc4j.core</groupId>
    <artifactId>oslc4j-core</artifactId>
    <version>1.1</version>
  </dependency>
</dependencies>
</project>

我不知道为什么它不只是重装罐子,而是保持在这种奇怪的状态。帮助非常重要。

共有3个答案

柴文林
2023-03-14

我得到了这样的错误:

容器“Maven Dependencies”引用了不存在的库“G:\m2\repository\org\apache\tomcat\tomcat-embed\7.0.65\tomcat-embed-7.0.65”。罐子

我发现tomcat-embed实际上是一个*. pom文件,但不是*. jar

<dependency>
  <groupId>org.apache.tomcat</groupId>
  <artifactId>tomcat-embed</artifactId>
  <version>7.0.65</version>
  <type>pom</type>
</dependency>

所以我通过以下方法解决了这个问题:

  1. 删除tomcat-embed-7.0.65.jar.last更新
  2. 复制一个*. jar文件到dirG:\m2\repository\org\apache\tomcat\tomcat-embed\7.0.65\
  3. 重命名为tomcat-embed-7.0.65.jar

但是解决这个问题的另一种方法呢?

鞠乐
2023-03-14

有时官方声明的依赖配置也是不正确的。例如,截至2015-05-23,Robolectic网站称...

<dependency>
   <groupId>org.robolectric</groupId>
   <artifactId>robolectric</artifactId>
   <version>3.0</version>
   <scope>test</scope>
</dependency>

...这给出了与你描述的相同的错误。敲了一会儿我的头后(当然这是我第一次尝试马文),我最终在马文中心检查了这个网址:http://mvnrepository.com/artifact/org.robolectric/robolectric

瞧,没有3.0版本。取而代之的是版本“3.0-rc1”和“3.0-rc2”。当我把依赖项改为“3.0-rc2”时,突然一切都正常了。

赵珂
2023-03-14

基本上,Maven告诉您,它无法找到您在pom中声明的依赖项。xml。事实上,有一个文件名为*。罐子lastUpdated表示Maven试图下载依赖项,但无法获取。

首先,您可以尝试完全删除包含*的文件夹。罐子上次更新,然后再次运行生成。然后Maven将再次尝试下载依赖项。也许这只是一个暂时的错误。

但是由于此依赖项在Maven Central中不可用,您可能必须将相应的存储库添加到您的pom.xml.

 类似资料:
  • 问题内容: 我以前在计算机上运行Eclipse Juno时使用的是win8,但是从现在开始我想开始使用STS,因此在创建新项目时会遇到以下错误。我删除了.m2文件夹,为了从头开始,与Eclipse有关的所有内容仍然无法正常工作,我的想法已荡然无存。有什么建议吗? 找不到“ springframework.org/tags”的标签库描述符index.jsp / app / src / main /

  • 我有一个使用Spring的项目。它使用的是3.1.1版本,但是,由于某些原因,我真的不知道,有些spring工件与两个不同的版本是重复的。我在项目中的所有pom.xml文件中查找这些依赖项。我还使用dependecy插件来找出那些依赖项包含在哪里。 这里有输出的提取 据我所知,这意味着包含在中。 更新:似乎当我评论下一段代码时,罐子不包括在战争中。

  • 我和我的朋友正在做一个Java maven项目,它的设置和我们从Git得到的项目是一样的。在我的设置中,Maven正确地导入了所有依赖项,但对于我的朋友,它找不到任何依赖项。 我们尝试过的事情: 右键单击project,单击maven并单击Reimport。 我们都可以上网,所以这也不是问题。而且,Maven在IntelliJ中设置为自动导入。

  • Maven错误: 未能对项目XXXXXX执行目标:无法解析项目XXXXXX:XXXXXX:0的依赖项。1-快照:找不到com。神谕ucm:idcserver:jar:11.1.1.8英寸[http://internal-proxy:8080/nexus-2.6.4/content/groups/XXXXXX]缓存在本地存储库中,在内部代理的更新间隔结束或强制更新之前,不会重新尝试解析。 我已经确认

  • 问题内容: 标题 我试图在我的Java EE6应用程序(类名VisualizerRepository.java)中使用jdbc连接,但是在nexus存储库中有jdbc驱动程序 该类必须执行存储过程并打印该过程的结果。由于JPA 2.0不支持使用jdbc调用程序。 包com.nfsmith.crm.data.repository; 当我执行构建时,看到编译错误,提示软件包oracle.jdbc不存在

  • 最近,我发现了以下问题: 当我为我的项目设置依赖项管理时,我有一个child-pom,它使用具有依赖项的插件,我想要与在我的依赖项管理中声明的依赖项同步。 在根pom中,我在依赖项管理中声明: 在子pom中,我有一个插件需要gwt-user: 但是,如果我移除gwt-maven-plugin中使用的依赖版本,编译就会失败。 是不是还有别的办法可以实现呢? PS:在maven和maven插件中有一个