本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:

http://blog.csdn.net/column/details/gradle-translation.html

翻译项目请关注Github上的地址:

https://github.com/msdx/gradledoc

本文翻译所在分支:

https://github.com/msdx/gradledoc/tree/1.12。

直接浏览双语版的文档请访问:

http://gradledoc.qiniudn.com/1.12/userguide/userguide.html。

另外,Android 手机用户可通过我写的一个程序浏览文档,带缓存功能的,目前0.2.1版本兼容 android 2.2以上系统,地址如下:

http://www.wandoujia.com/apps/com.githang.gradledoc

翻译不易,转载请注明本文在CSDN博客上的出处:

http://blog.csdn.net/maosidiaoxian/article/details/50156087

关于我对Gradle的翻译,以Github上的项目及http://gradledoc.qiniudn.com 上的文档为准。如有发现翻译有误的地方,将首先在以上两个地方更新。因时间精力问题,博客中发表的译文基本不会同步修改。

第四十四章. 分发插件

分发插件目前还是孵化中状态。请务必注意,在以后的 Gradle 版本中,相关的 DSL 和其他配置可能会有所改变。

分发插件便于建立archives,作为该项目要分布的文件。分发 archives 通常包含可执行程序,和其他支持文件,比如文档。

44.1. 用法

要使用分发插件,请在构建脚本中包含以下语句:

示例 44.1. 使用分发插件

build.gradle

apply plugin: 'distribution'

本插件向 project 添加了一个名为“distributions” 的 DistributionContainer 类型的扩展。它还在分发容器扩展中创建了一个名为“main”的 distribution。如果你的构建只产生一个 distribution,你只需要配置这一个 distribution(或使用默认值)。

你可以运行“gradle distZip”把 main distribution 打包为 ZIP,或者是运行“gradle distTar”来创建一个使用 GZip 压缩的 TAR 文件。这些文件将会创建在“$buildDir/distributions/$project.name-$project.version.«ext»”。

你可以运行“gradle installDist”来组装这些分发内容,解压到“$buildDir/install/main”。

44.2. 任务

分发插件向 project 中添加了以下任务:

表 44.1. 分发插件 - 任务

任务名称 依赖于 类型 描述
distZip - Zip 创建分发内容的 ZIP 文件
distTar - Tar 创建分发内容的 ZIP 文件
installDist - Sync 组装分发内容,并安装在当前计算机上

对于你向项目中添加的每一个额外的分发集合,分发插件会添加下列任务:

表 44.2. 多分发 - 任务

任务名称 依赖于 类型 描述
${distribution.name}DistZip - Zip 创建分发内容的 ZIP 文件
${distribution.name}DistTar - Tar 创建分发内容的 TAR 文件
install${distribution.name.capitalize()}Dist - Sync 组装分发内容,并安装在当前计算机上

示例 44.2. 添加额外的分发

build.gradle

apply plugin: 'distribution'

version = '1.2'
distributions {
    custom {}
}

这将向项目添加下列任务:

  • customDistZip
  • customDistTar
  • installCustomDist

给定项目的名称为“myproject”,版本为“1.2”,运行“gradle customDistZip”将会产生一个名字为”myproject-custom-1.2.zip“的 ZIP 文件。

运行”gradle installCustomDist“将会把分发内容安装到”$buildDir/install/custom“。

44.3. 分发内容

所有在”src/$distribution.name/dist“目录中的文件都会被自动地包含在 distribution 中。你可以通过配置作为窗口一部分的Distribution 对象,来添加额外的文件。

示例 44.3. 配置 main distribution

build.gradle

apply plugin: 'distribution'

distributions {
    main {
        baseName = 'someName'
        contents {
            from { 'src/readme' }
        }
    }
}

在上面的示例中,”src/readme“目录的内容将被包含进 distribution(与默认添加的”src/dist/main“目录中的文件一起)。

baseName“属性也被修改了。这将导致分发的 archives 以不同的名字创建。


Gradle 1.12用户指南翻译——第四十四章. 分发插件的更多相关文章

  1. Gradle 1.12用户指南翻译——第五十二章. Maven 插件

    本文由CSDN博客貌似掉线翻译,其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上 ...

  2. Gradle 1.12用户指南翻译——第三十九章. IDEA 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  3. Gradle 1.12用户指南翻译——第三十五章. Sonar 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  4. Gradle 1.12用户指南翻译——第三十二章. JDepend 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  5. Gradle 1.12用户指南翻译——第六十五章. Maven 发布(新)

    其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上的地址:https://gith ...

  6. Gradle 1.12用户指南翻译——第三十四章. JaCoCo 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  7. Gradle 1.12用户指南翻译——第六十四章. 发布到Ivy(新)

    其他章节的翻译请参见:http://blog.csdn.net/column/details/gradle-translation.html翻译项目请关注Github上的地址:https://gith ...

  8. Gradle 1.12用户指南翻译——第三十六章. Sonar Runner 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  9. Gradle 1.12用户指南翻译——第三十八章. Eclipse 插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

  10. Gradle 1.12用户指南翻译——第四十二章. Announce插件

    本文由CSDN博客万一博主翻译,其他章节的翻译请参见: http://blog.csdn.net/column/details/gradle-translation.html 翻译项目请关注Githu ...

随机推荐

  1. maven隐式依赖引起的包冲突

    包冲突 使用maven管理项目时可能会遇到包冲突的情况比如:log4j-over-slf4j.jar 和 slf4j-log4j12.jar这两个包同时一起运行时就会有问题. 这种冲突可能是显式依赖导 ...

  2. nfc开发

    很多Android设备已经支持NFC(近距离无线通讯技术)了.本文就以实例的方式,为大家介绍如何在Android系统中进行NFC开发. Android NFC开发环境 使用硬件:Google Nexu ...

  3. Java中导出到Excel实现_aspose.cells

    参考http://183615215-qq-com.iteye.com/blog/1858208 包下载:http://pan.baidu.com/s/1o6ju0ZK,将lib的jar包导入到工程中 ...

  4. 2.0、Android Studio编写你的应用

    Android Studio包含了每个开发阶段的各种工具,但是最重要就是编写代码. 高效编码 接下来的是能够帮助你高效编程的方法. 使用Lint快速修复 Android Studio提供一个叫Lint ...

  5. 【ShaderToy】开篇

    写在前面 呜呼,好久没有写博客了,好惭愧.题外话,感觉越大就越想家,希望可以一直和家人在一起,哪怕只是坐在一起不说话也觉得很温暖,一想到要分开眼睛就开始酸,哎.开学还是爬上来老实更新博客学习吧~ 今天 ...

  6. Spark技术内幕:Master基于ZooKeeper的High Availability(HA)源码实现

    如果Spark的部署方式选择Standalone,一个采用Master/Slaves的典型架构,那么Master是有SPOF(单点故障,Single Point of Failure).Spark可以 ...

  7. Android学习之Animation(三)

    今天观看了一个关于android动画的一些知识,就顺便记录下来,以备之后的学习和参考. 在XML文件中使用LayoutAnimationController 第一步: 在res/anim文件夹下创建一 ...

  8. 根据CSS的class选择DOM

    // 网上参考的,自己修改了一部分 // 代码如下,纯JS,要求浏览器支持 getElementsByClassName 方法 <script type="text/javascrip ...

  9. Dynamics CRM2013 编辑视图时弹出尚未保存所做的更改警示框

    CRM2013中当对视图进行自定义编辑时,总会弹出如下图所示的警示框,一般我们都会选择离开此页来保存我们所做的更改,显而易见的是这又是CRM2013的一个bug 在UR2 for  Dynamics ...

  10. Install and run DB Query Analyzer 6.04 on Microsoft Windows 10

          Install and run DB Query Analyzer 6.04 on Microsoft Windows 10  DB Query Analyzer is presented ...