本文由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. Erlang递归列举目录下文件

    Erlang递归列举目录下文件(金庆的专栏)%%%-------------------------------------------------------------------%%% @aut ...

  2. Android开发之Intent.Action 各种Action的常见作用

    1 Intent.ACTION_MAIN String: android.intent.action.MAIN 标识Activity为一个程序的开始.比较常用. Input:nothing Outpu ...

  3. 5.1.3.jvm java虚拟机系统参数查看

    不同的参数配置对系统的执行效果有较大的影响,因此,我们有必要了解系统实际的运行参数. 1.1.1.1. -XX:+PrintVMOptions 参数-XX:+PrintVMOptions可以在程序运行 ...

  4. Centos7安装RocketMQ及配置测试

    环境 Centos7 RocketMQ 3.2.6 安装位置 /usr/local/alibaba-rockermq 外网ip 182.254.145.66 内网ip 10.105.23.114 安装 ...

  5. 05_NoSQL数据库之Redis数据库:Redis的常用命令,键值相关命令和服务器相关命令

     Redis常用命令 Redis提供了丰富的命令对数据库和各种数据库类型进行操作,这些命令可以再Linux终端使用. 键值相关命令: Keys:返回满足给定pattern的所有key 用表达式*表 ...

  6. path和classpath的区别

    path的作用 path是系统用来指定可执行文件的完整路径,即使不在path中设置JDK的路径也可执行JAVA文件,但必须把完整的路径写出来,如C:\Program Files\Java\jdk1.6 ...

  7. EBS预置文件作用收集整理

    在EBS之中,有很多的配置选项(profile),系统管理员只需要对它们做一些简单的配置,就可以达到控制流程开关.安全访问.个人喜好等等方面的要求. 以HR: Security Profile为例,该 ...

  8. 根据CSS的class选择DOM

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

  9. Linux IPC实践(13) --System V IPC综合实践

    实践:实现一个先进先出的共享内存shmfifo 使用消息队列即可实现消息的先进先出(FIFO), 但是使用共享内存实现消息的先进先出则更加快速; 我们首先完成C语言版本的shmfifo(基于过程调用) ...

  10. 【闲谈】应聘时要问HR的7个问题

    前段时间朋友看了一本书,聊天中告诫了我关于毕业大学生面试时应该问HR的7个问题.这7个问题如下: 我所应聘的这个职位为什么会出现空缺 请问贵公司最成功的员工曾为公司作出了什么样的贡献 如何评估自己在试 ...