maven中值为provided的scope,可以让我们声明一个只在编译时使用的非传递性的依赖。在gradle中我们可以声明compileOnly依赖来实现类似的效果(需要java插件)。示例如下:
1 2 3 4 5 |
dependencies { testCompile group: 'junit', name: 'junit', version: '4.12' compileOnly group: 'org.apache.spark', name: 'spark-core_2.10', version: sparkVersion compileOnly group: 'org.scala-lang', name: 'scala-compiler', version: scalaVersion } |
compileOnly声明的使用场景可以一言蔽之:声明的依赖只在compile阶段使用,但是不会在runtime阶段用到,并且这种依赖也是非传递性的。
######
发表评论