因为某些操作需要,现在需要将一个 Gradle Java 项目的所有依赖的 jar 包导出到某个指定目录。
实践环境:Gradle 6.3
有效代码:
task copyJars(type: Copy) {
from configurations.runtimeClasspath
into "$buildDir/libs/deps"
}
参考文档:https://docs.gradle.org/6.3/dsl/org.gradle.api.Project.html#N16132
不过,
runtimeClasspath
仅仅复制了 runtime 作用域的依赖,不包含 test 等作用域。除了
runtimeClasspath
,configurations 下面还有其他属性,例如:compileClasspath
, testCompileClasspath
, testRuntimeClasspath
, …运行效果:
文章图片
在网上看到一些方法,以及参考 StackOverFlow,都没有生效,有可能是版本问题:
how to copy the dependencies libraries JARs in gradle
【Gradle|Gradle 6.3 复制 / 导出依赖 jar 包到指定目录】以下代码都没有生效:
task copyJars(type:Copy) {
from configurations.runtime
into "$buildDir/libs/deps"
}
task copyToLib(type: Copy) {
into "$buildDir/output/libs"
from configurations.compile
}
推荐阅读
- Gradle|Gradle使用axion-release和maven-publish插件构建和发布lib
- 如何在mac上手动安装gradle
- Android|Android 开发IDE之(Eclipse 和 Android Studio )
- gradle maven私服构建aar
- 自定义Android Studio工程模板
- Android|Gradle中自定义String类型属性注意点
- android|gradle和gradlew的区别