我最近在我的Maven构建中遇到问题,它为javamail-1.4.jar或其他下载了jar文件,但事实证明该文件不是真正的jar文件,它实际上是带有链接的html在哪里获得正确的 jar 。
似乎仓库已经改变了。但是在我的Maven设置中,一切都应该转到我们的内部仓库中,我不知道那是怎么发生的。但是无论如何,更重要的是,我该如何解决此问题,以便它将在全新安装中下载正确的jar文件?
谢谢!
最佳答案
您可以在设置settings.xml
之前下载该jar以使用公司存储库,或者公司存储库包含您拥有的版本。因此,首先检查内部存储库实际包含的内容(如果javamail工件不是预期的工件,则下载它并将其安装在内部仓库中)。然后从本地存储库中删除工件以重新下载。
更新:我的理解是,您从log4j传递了此依赖关系,因此您必须使用log4j 1.2.15。要解决该问题,请在内部存储库中安装缺少的依赖项,或者恢复到log4j 1.2.14,或者从log4j 1.2.15中排除传递性依赖项:
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.15</version>
<exclusions>
<exclusion>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
</exclusion>
<exclusion>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jdmk</groupId>
<artifactId>jmxtools</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jmx</groupId>
<artifactId>jmxri</artifactId>
</exclusion>
</exclusions>
</dependency>
https://stackoverflow.com/questions/2473988/