如何使用Gradle下载JAR文件?

7vux5j2d  于 2023-10-19  发布在  其他
关注(0)|答案(2)|浏览(178)

我有一个非标准的项目布局。
我如何使用Gradle将一堆依赖项下载到lib目录中,与build.gradle位于同一目录下?现在,我不需要它做任何事情。
以下是我到目前为止所做的:

apply plugin: "java"

repositories {
    mavenCentral()
}

buildDir = "."
libsDirName = "lib"

dependencies {
    runtime group: "...", name: "...", version: "..."
}

如果我运行gradle build,它会在lib目录中构建一个空的JAR文件,而不是在那里下载我的依赖项。
在属性中将“lib”与“.”切换也不起作用。

3mpgtkmj

3mpgtkmj1#

下面的代码应该可以工作:

apply plugin: 'base'

repositories {
    mavenCentral()
}

configurations {
    toCopy
}

dependencies {
    toCopy 'com.google.guava:guava:18.0'
    toCopy 'com.fasterxml.jackson.core:jackson-databind:2.4.3'
}

task download(type: Copy) {
    from configurations.toCopy 
    into 'lib'
}
z31licg0

z31licg02#

对于下载implementationruntimeOnly依赖项,可以使用configurations.runtimeClasspath

apply plugin: 'base'

repositories {
    mavenCentral()
}

dependencies {
    implementation 'com.google.guava:guava:18.0'
    runtimeOnly 'com.fasterxml.jackson.core:jackson-databind:2.4.3'
}

task copyDependencies(type: Copy) {
    from configurations.runtimeClasspath
    into 'lib'
}

然后执行gradle copyDependencies

相关问题