Gradle实战-第一课

来源:互联网 发布:不表态 知乎 编辑:程序博客网 时间:2024/06/05 07:35

  • 构建java项目
  • 自定义的Maven仓库
  • Intellij Idea 集成gradle应用
  • Gradle 使用的仓库
    • 可能遇到的问题
  • Gradle Plugin User Guide 中文版

构建java项目

自定义的Maven仓库

build.gradle中:

repositories {    mavenCentral()}

调用mavenCentral()方法,其中默认定义了URL: http://repol.maven.org/maven2


如果想要自定义一个maven仓库:

repositories {    mavenCentral()    maven{        name 'customer-nexus-respository'        url  '192.168.5.205/release'    }}

Intellij Idea 集成gradle应用

  • 先上图:

gradle描述

  • idea 面板下方有个菜单-> Terminal(终端的意思) 我们可以使用命令行来执行gradle的一些命令。如图中所示:

    • 在Windows下,命令为 gradlew.bat …
    • 在 Mac下, 命令为 ./gradlew …
      • 我们可以使用命令: gradlew.bat –help 来查看我们有哪些参数
      • 比如说我们可以查看运行的log : gradlew.bat –info

Gradle 使用的仓库

allprojects {    repositories {        jcenter()        mavenCentral()        maven {            url 'file:///Users/myusername/repo/'        }    }}

可能遇到的问题

  • 下载依赖库失败,报 peer not found
  • 连接 jcenter 库默认使用 https 协议,出现这个错,多数情况下都是因为连接失败了,原因嘛,你懂的。 可以尝试将 jcenter 改成默认使用 http 连接:
jcenter {            url "http://jcenter.bintray.com/"        }
  • 下载不到特定的版本
    • Maven 和 Gradle 都会有一个缓存库,默认安装的情况下,是在用户根目录下的 .m2 或者 .gradle 文件夹中。 可以尝试删除里面的文件。例如将 Gradle 的 cache 文件删除:

    rm -rf ~/.gradle/caches/

注意:这个操作可能会导致所有的远程库都需要重新下载,要三思后行。

  • 库重复冲突
  • 使用了 com.android.support:support-v4:19.0.0 包,可能用户的 App 也使用了这个包,就可能在编译进行代码合并到时候出类似的错:
multiple dex files define Landroid/support/annotation/AniRes
  • 这个时候,在 module 的 build.gradle 的 dependency 添加依赖时,加入 exclude 规则:
compile ('com.bugtags.library:bugtags-lib:latest.integration') {        exclude group: 'com.android.support', module: 'support-v4'}

Gradle Plugin User Guide 中文版

csdn一博主翻译的

0 0
原创粉丝点击