maven的jar包治理失效
maven的jar包管理失效
在mavenrepository库中查找依赖关系:
运行maven的时候提示The POM for commons-discovery:axis:jar:1.4 is missing, no dependency information
遇到这样的提示,很多时候是因为jar包不存在了,已经不在maven仓库中管理了,因此就拿不到jar包了,但是没有这个jar包又会导致maven install运行不通过。因此处理的方案有两种,一种是下载Jar包安装到本地目录中,另外一种是更改pom文件,更换一个Jar包的版本。
原来的pom文件如下所示:
<dependency> <groupId>org.eclipse.birt.runtime</groupId> <artifactId>viewservlets</artifactId> <version>4.3.0</version> </dependency>
在mavenrepository库中查找依赖关系:
Depends on
Category | Group / Artifact | Version | |
---|---|---|---|
commons-discovery » axis | 1.4 | ||
commons-discovery » commons-discovery | 0.5 | ||
org.eclipse.birt.runtime » org.eclipse.birt.runtime | 4.3.0 |
发现依赖一个common-discover:axis的jar包,但是这个jar包点击进去并不存在,因此导致了依赖失败。继续查看viewservlets包的其他版本(4.4.1),发现:
Depends on
Category | Group / Artifact | Version | |
---|---|---|---|
commons-discovery » commons-discovery | 0.5 | ||
org.apache.axis » axis | 1.4 | ||
org.eclipse.birt.runtime » org.eclipse.birt.runtime | 4.4.1 |
因此改为org.apache.axis:axis的jar包:pom文件修改如下:
<dependency> <groupId>org.eclipse.birt.runtime</groupId> <artifactId>viewservlets</artifactId> <version>4.3.0</version> <exclusions> <exclusion> <artifactId>axis</artifactId> <groupId>commons-discovery</groupId> </exclusion> </exclusions> </dependency>
在忽略依赖commons-discovery:axis后需要增加正确的axis包的位置:
<dependency> <groupId>org.apache.axis</groupId> <artifactId>axis</artifactId> <version>1.4</version> </dependency>
再次运行mvn install,问题被完美解决。
总结:
出现这类问题都是因为依赖的包不存在了,所以需要查找正确的包,或者更改依赖关系。
当前方案正是修改了依赖关系。