Son1 Son2
Son1和Son2 是两个单独的模块,其中Son2引用Son1。
结论:只要先install Son1成功,不管Son2是都有Parent,那么Son2都可以build成功。
2.Son1和Son2有共同父类,只继承无聚合Parent |--------->Son1 |--------->Son2
Parent下一个有两个子类 Son1和Son2。他们之间只实现了继承关系。即Son1和Son2继承自同一个父Parent。同时Son2中引用Son1。
结论:
Son1只是依赖三方,那么在不提前build Parent的前提下可以build Son1成功;
Son2除了三方外还依赖了Son1,那么build Son2的时候 就需要提前install Parent和Son1才能成功。缺任何一个都会失败。
3.Son1和Son2有共同父类,继承和聚合Parent |--------->Son1 |--------->Son2 |--------->Son3
Parent下一个有三个子类 Son1和Son2和Son3。Son1和Son2和Son3继承自同一个父Parent。同时Son2中引用Son1。
结论:
Son1和Son3只是依赖三方,那么在不提前build Parent的前提下分别可以build Son1和Son3成功;
Son2除了三方外还依赖了Son1,那么build Son2的时候 就需要提前install Parent和Son1才能成功。而Parent又聚合了Son1和Son2和Son3,所以install Parent就意味着所有的Son都要install。
所以如果只想buildSon2,可以在Parent的pom处执行 mvn clean install -pl Son2 -am。这样的话 就只会执行与Son2有关的相应模块。
[INFO] Parent ............................................. SUCCESS [ 0.555 s]
[INFO] Son1 ............................................... SUCCESS [ 3.234 s]
[INFO] Son2 ............................................... SUCCESS [ 1.067 s]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)