Mavan 项目中遇到的参数作用记录

Maven Scope

    * compile,缺省值,适用于所有阶段,会随着项目一起发布。 
    * provided,类似compile,期望JDK、容器或使用者会提供这个依赖。如servlet.jar。 
    * runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 
    * test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 
    * system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它

示例:

		
			org.projectlombok
			lombok
			provided
		

Maven optional 可选依赖

应用场景:projectA 依赖projectB,  projectB 依赖projectC时


  com.itear.projectB
  projectB
  0.0.1-SNAPSHOT
  true

当projectB的true时, projectA中如果没有显式的引入projectC, 则projectA不依赖projectC, 即projectA可以自己选择是否依赖projectC

默认的值为false, 及子项目必须依赖

 

 

你可能感兴趣的:(Maven)