当模块A有下面依赖
<dependency>
<groupId>com.zhg</groupId>
<artifactId>interface</artifactId>
<version>0.0.1-SNAPSHOT</version>
<optional>true</optional>
</dependency>
当模块B依赖模块A时,如果不写optional会进行依赖传递,
当optional为true是,这个依赖项不会传递到B
当设置为fasle的时候,这个依赖项会传递到B
也就是模块B引用了模块A,模块B也不会有模块A中写了<optional>true</optional>的依赖
更多详细:http://maven.apache.org/guides/introduction/introduction-to-optional-and-excludes-dependencies.html
网友评论