quanlity-node依赖common-node之前的maven依赖都是可以,今天打开重新maven install时报错了
warn:The POM for com.xxx:jar:0.0.1-SNAPSHOT is invalid, transitive dependencies (if any) will not be available;
一:后面通过maven 调试发现(添加 -X 参数 )run as ->maven build中配置mvn install -X,发现common-node确实还是有问题的。原因是common-node 的pom 引用了一个本地的jar,它的写法是 相对路径,从而导致quanlity-node 所依赖的所有jar都不可用了,如下:
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/java/lib/ojdbc6-11.2.jar</systemPath>
</dependency>
从而,maven compile 失败了。 怎么解决呢? 提示告诉我,需要写成绝对路径的形式。 把那个本地jar 的地址改为绝对路径就好了:不过,发现 还行需要先把common-node 先install,不install 还不行。
二:应用根目录打印依赖树:
开启debug功能,重新打印依赖树:
mvn -X dependency:tree>tree.txt
- 开启maven debug功能后,警告后紧跟了一条错误信息,如下。错误原因:传递依赖项中有依赖项路径是相对路径。
- [WARNING] The POM for com.xxx:common-node:jar:0.0.1-SNAPSHOT is invalid, transitive dependencies (if any) will not be available: 1 problem was encountered while building the effective model for com.xxx:common-node:0.0.1-SNAPSHOT
[ERROR] 'dependencies.dependency.systemPath' for com.oracle:ojdbc6:jar must specify an absolute path but is ${project.basedir}/src/main/java/lib/ojdbc6-11.2.jar @