繁体   English   中英

使用本地依赖项Gradle构建Fat罐

[英]Building a Fat jar with local dependencies Gradle

我有一个build.gradle文件如下

buildscript {
    repositories { jcenter() }
}

dependencies {
    compile 'io.dropwizard:dropwizard-core:0.8.2'
    compile 'io.dropwizard:dropwizard-testing:0.8.2'
}

当我运行gradle build它会从maven存储库中下载dropwizard依赖项并构建一个胖jar。 每次我在新的开发环境中提取代码时,都会从Maven中央存储库中获取代码。 但是有些开发机器无法访问互联网,因此要在这些机器中进行构建,我想是否可以在源代码根文件夹中创建一个名为libs的文件夹,并使用该文件夹来加载jar文件,例如

repositories {
   flatDir {
       dirs 'libs'
   }
}

有可能吗? 从本地计算机上的Maven Central找到下载的jar的位置,以便可以将它们复制到libs文件夹(dropwizard 0.8.2 jar)

是的,有可能。 创建以下任务:

task copyLibs(type: Copy) {
   from configurations.compile
   into 'libs'
}

运行此任务后,您将拥有一个包含所有依赖项的文件夹 (您可能需要的范围比编译时要大得多-因此请调整任务)。 您需要将此文件夹检查到SCM并提交。

当然,请记住,如果您更改版本,它不会自动更新依赖项这一事实-您需要手动执行,或者编写一个可以满足您所有需求的插件。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM