optional
adj.
可选择的;选修的。
当project-A 依赖project-B, project-B 依赖project-C时
如果在B的pom.xml中将依赖C的optional指定为true
<dependency>
<groupId>sample.ProjectC</groupId>
<artifactId>ProjectC</artifactId>
<version>1.0-SNAPSHOT</version>
<optional>true</optional>
</dependency>
project-A中如果没有显式的手动引入project-C, 则project-A不会依赖project-C, 即project-A可以自己选择是否依赖project-C
如果不在B中配置依赖C的optional树形为true,则默认值为false, 此时A会自动依赖C。