java - Maven Eclipse错误: "Archive for required library cannot be read or is not a valid ZIP file"

标签 java eclipse maven

我在 Eclipse 中导入的 Maven 项目出现“无法读取所需库的存档或不是有效的 ZIP 文件”错误。我读了一些关于此的文章,并建议删除错误的目录,就像我的例子一样:
~.m2\repository\com\cogentex\rpw\2.2 和
~.m2\repository\com\cogentex\rpw-lkb\2.2
然后,您应该通过 Eclipse 更新项目:Maven>更新项目,然后单击强制更新快照/版本。 我按照以下步骤操作,目录现在如下所示:
screenshot

因此,仍然缺少正确的 .jar 文件,并且现在还会导致更多错误:
1:缺少 Artifact com.cogentex:rpw-lkb:jar:2.2
2:缺少 Artifact com.cogentex:rpw:jar:2.2
3:容器“Maven Dependencies”引用不存在的库“~.m2\repository\com\cogentex\rpw\2.2\rpw-2.2.jar”

这是 pom.xml 中的片段,它抛出前两个错误:

    <dependency>
        <groupId>com.cogentex</groupId>
        <artifactId>rpw</artifactId>
        <version>2.2</version>
    </dependency>

    <dependency>
        <groupId>com.cogentex</groupId>
        <artifactId>rpw-lkb</artifactId>
        <version>2.2</version>
    </dependency>

我需要做什么才能让 Maven 下载正确的 .jar 文件?我已经尝试运行 maven cleanmaven install 并重新启动 Eclipse。

最佳答案

您在文件夹中看到的是一些文件,这些文件指示未找到该 Artifact 以及 Maven 上次检查的时间。

无论com.cogentex:rpw是什么,它都是not in Maven Central所以 Maven 不会在那里找到它。你需要通过 providing the URL to a repository 告诉 Maven 从哪里获取它包含它的。如果/当你的 POM 有存储库时,请确保

  • 您确实可以从运行构建的环境访问存储库(检查代理、防火墙等)
  • GAV 坐标(groupId、artifactId、version)正确且与存储库中的坐标匹配。
  • 存储库中的 Artifact 类型是 jar。如果不是,请在依赖项中提供正确的类型
  • 该 Artifact 不是 deployed to the repository with classifier 。如果是,请在依赖项中提供分类器

关于java - Maven Eclipse错误: "Archive for required library cannot be read or is not a valid ZIP file",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57589520/

相关文章:

java - Apache Sling/felix 中的 OSGi slf4j 日志记录

java - 如何对我的 MainActivity 进行单元测试?

java - JSF 表达式语言的代码风格指南

java - 没有继承的类的构造函数中的 super()

Eclipse错误: 'Failed to create the Java Virtual Machine'

c++ - Eclipse CDT : Unresolved inclusion of STL header

eclipse - 有没有办法让 Eclipse 中的所有局部变量对齐?

java - Maven 程序集插件不再生成 jar-with-dependencies,为什么?

java - maven-remote-resources-plugin 不存放资源在/target/classes

java - 从未排序的数组中找出两个这样的元素,它们在不对数组进行排序的情况下具有最小差异