zoukankan      html  css  js  c++  java
  • Gradle 编译学习笔录

    • Gradle下载与配置

    下载路径: http://www.gradle.org/downloads 

    配置: 下载完gradle后, 解压缩到你的目录盘, 然后打开gradle的bin目录并将其路径复制, 打开环境变量, 将复制的内容加到Path中。

                配置完毕后,可以打开cmd命令工具, 运行gradle –version 如果出现正确的版本号 那么将配置成功 !

    • Gradle简单命令介绍 

    build 编译命令: 使用cmd命令进入到项目目录下, 然后运行gradle build . 编译成功后可以在build/目下下查看文件

    clean 命令: gradle clean 可以清除上一次build后的文件。

    check 命令:gradle check 可以使编译用上类似checkstyle文件对项目进行检查。 

    • build.gradle 代码详细介绍

    隐藏行号 复制代码 build.gradle
    1. buildscript {
      
    2.     ##### 大意就是支持java 依赖库管理(maven/ivy),用于项目的依赖。这也是gradle 强力的地方。。。
      
    3.     ## How does Gradle find the files for external dependencies? Gradle looks for them in a repository. 
      
    4.     ## A repository is really just a collection of files, organized by group, name and version.
      
    5.     ## Gradle understands several different repository formats, such as Maven and Ivy, 
      
    6.     ## and several different ways of accessing the repository, such as using the local file system or HTTP.
      
    7.     repositories {
      
    8.         #### 至少声明一个类型, 如果不用maven的话, 默认的就是这个了。 ####
      
    9.         mavenCentral()
      
    10.         
      
    11.         ## a remote Maven repository ##
      
    12.         maven{
      
    13.             url "http://host:port/nexus/content/groups/public"
      
    14.         }
      
    15.         
      
    16.     }
      
    17.     ### 依赖什么版本的Gradle编译工具 ###
      
    18.     dependencies {
      
    19.         classpath 'com.android.tools.build:gradle:0.9.2'
      
    20.     }
      
    21. }
      
    22. #### 编译项目类型 ####
      
    23. apply plugin: 'android'
      
    24. 
      
    25. ### 编译第三方包 ###
      
    26. dependencies {
      
    27.     # 编译所有libs下的第三方包 #
      
    28.     compile fileTree(dir: 'libs', include: '*.jar')
      
    29.     # 编译一个Lib包 #
      
    30.     compile files("libsandroid-support-v4.jar");
      
    31. }
      
    32. ### 配置项 ###
      
    33. android {
      
    34.     
      
    35.     compileSdkVersion 19
      
    36.     buildToolsVersion "19"
      
    37.     
      
    38.     defaultConfig {
      
    39.         minSdkVersion 14
      
    40.         targetSdkVersion 19
      
    41.     }
      
    42.     #### 配置release版本的签名项目以及代码混淆 ####
      
    43.     signingConfigs {
      
    44.         myConfig{
      
    45.             storeFile file("gradle.keystore")
      
    46.             storePassword "gradle"
      
    47.             keyAlias "gradle"
      
    48.             keyPassword "gradle"
      
    49.             ###  配置使用代码混淆  ###
      
    50.             runProguard true
      
    51.             proguardFile 'proguard-android.txt'
      
    52.         }
      
    53.     }
      
    54.     #### 编译版本 (release和debug版本) ####
      
    55.     buildTypes{
      
    56.         release {
      
    57.             signingConfig  signingConfigs.myConfig
      
    58.         }
      
    59.         
      
    60.         debug {
      
    61.             packageNameSuffix ".debug"
      
    62.         }
      
    63.     }
      
    64.     #### 配置多渠道  (playstore 与 hiapk) 改变不同渠道的包名 ####
      
    65.     productFlavors {
      
    66.         playstore {
      
    67.             packageName='com.youxiachai.androidgradle.playstore'
      
    68.         }
      
    69.         hiapk {
      
    70.             packageName='com.youxiachai.androidgradle.amazonappstore'
      
    71.         }
      
    72.     }
      
    73.     
      
    74.     sourceSets {
      
    75.         main {
      
    76.             manifest.srcFile 'AndroidManifest.xml'
      
    77.             java.srcDirs = ['src']
      
    78.             resources.srcDirs = ['src']
      
    79.             aidl.srcDirs = ['src']
      
    80.             renderscript.srcDirs = ['src']
      
    81.             res.srcDirs = ['res']
      
    82.             assets.srcDirs = ['assets']
      
    83.             jniLibs.srcDirs = ['libs']
      
    84.         }
      
    85.         ### 不同渠道可以应用不同的文件 ###
      
    86.         hiapk {
      
    87.                manifest.srcFile 'hiapk/AndroidManifest.xml'
      
    88.            }
      
    89.            
      
    90.            playstore {
      
    91.                manifest.srcFile 'hiapk/AndroidManifest.xml'
      
    92.            }
      
    93.     
      
    94.         ### 配置android测试 ###
      
    95.         instrumentTest.setRoot('tests')
      
    96.     }
      
    97.     ### 使用lint检测 ###
      
    98.     lintOptions {
      
    99.         abortOnError false
      
    100.     }
      
    101. }
      

    2. http://www.cnblogs.com/youxilua/archive/2013/05/20/3087935.html 

    3. https://github.com/Goddchen/Android-Gradle-Examples

    Maven 使用:

    • 参考资料

    地址: http://jingyan.baidu.com/article/60ccbceb01de4d64cbb19756.html

    •  

    Nexus 搭建私服:

    • 参考资料:

    地址: http://www.blogjava.net/ldwblog/archive/2013/11/19/406529.html

    • 版本选择:

    JDK6 选择nexus 2.6一下版本, 否则启动不了。 nexus2.6以上版本需要JDK7

    花钱月下
  • 相关阅读:
    asp.net string有多行文字
    asp.net设置gridview页码显示遇到的问题
    asp.net button浏览器端事件和服务器端事件
    GridView 控制默认分页页码间距 及字体大小
    复合主键与联合主键(转载)
    vsCode 列选择、列选中、选中列、选中多列(转载)
    可能有用的技术社区(转载)
    SQL 用于各种数据库的数据类型(转载) sqlserver 数据类型 取值范围 长度
    TypeError: value.getTime is not a function (elementUI报错转载 )
    工作1年3个月总结(201707-201810 )
  • 原文地址:https://www.cnblogs.com/meimuan/p/3907534.html
Copyright © 2011-2022 走看看