zoukankan      html  css  js  c++  java
  • Jenkins+Gradle实现android开发持续集成和打包

    1、Jenkins gradle插件安装

    系统管理>管理插件>可选插件 选中Jenkins Gradle plugin插件安装重启即可。

    安装慢的话,可以把插件下载下来,手动上传插件或设置代理。如图

    2、Jenkins新建任务

    2.1 配置基本信息

    点击新Job,输入任务名称选中构建一个自由风格的软件项目,点击OK,跳到配置页面

     2.2 配置源码管理

    这样勾选之后每次构建出来的内容就可以看到包括所有引用的其他库的svn信息

    Repository URL: svn 的 的地址,如果输入的地址需要输入用户名和密码,将自动跳出红色的提示信息,点击"enter credential" 进入设置svn 用户名。

     2.3 配置构建触发器和构建环境

        Build periodically:周期进行项目构建(它不关心源码是否发生变化)    

        Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作。

        这里我选Poll SCM,(H/5 H(9-23) * * *)

        第一个参数代表的是分钟 minute,取值 0~59;
        第二个参数代表的是小时 hour,取值 0~23;
        第三个参数代表的是天 day,取值 1~31;
        第四个参数代表的是月 month,取值 1~12;
        最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。
        如H/5 * * * * 表示的就是每5分钟检查一次源码变化。

     

     2.4 构建

    本应该用invoke gradle script去构建的,但是尝试了几次没有成功

    于是就改为以下这种命令行的形式了

      2.5 构建后的操作

     

    3、android build.gradle配置

    Gradle 是以 Groovy 语言为基础,面向Java应用为主.基于DSL(领域特定语言)语法的自动化构建工具。现在已是android的默认构建工具了。

    apply plugin: 'com.android.application'
    android {
    //签名 signingConfigs { // debug { // 123 // storeFile file('sign/platform.keystore') // } // release { // storeFile file('C:/Source/StudioProjects/fmcdevice/app/sign/platform.keystore') // storeFile file('sign/platform.keystore') // storePassword 'android' // keyAlias 'androiddebugkey' // keyPassword 'android' // } } compileSdkVersion 23 buildToolsVersion "23.0.3" defaultConfig { applicationId "com.inpor.fmcdevice" minSdkVersion 17 targetSdkVersion 22 versionCode 1000 versionName "1.0.0" multiDexEnabled true } sourceSets { main { jniLibs.srcDirs = ['libs'] //jni.srcDirs = ['src/main/jni', 'jni/'] } } lintOptions { checkReleaseBuilds false abortOnError false } dependencies { compile fileTree(include: ['*.jar'], dir: 'libs') compile 'com.android.support:recyclerview-v7:24.0.0-alpha1' compile 'com.android.support:leanback-v17:24.0.0-alpha1' compile 'com.android.support:support-v4:24.0.0-alpha1' } buildTypes { // debug{ // signingConfig signingConfigs.debug // minifyEnabled true // proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' // } // release { // setZipAlignEnabled(true) // debuggable true // jniDebuggable true // signingConfig signingConfigs.release // renderscriptDebuggable true // signingConfig signingConfigs.release // minifyEnabled true // proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' // } } }

     

    3、local.properties配置

    在我这个项目中还需要配置sdk的路径,否则构建时编译失败

    sdk.dir=d:\AppData\Local\Android\Sdk
    

    sdk安装在了D:AppDataLocalAndroidSdk目录,配置这个就可以了

    4、build后检查构建的结果

      

  • 相关阅读:
    Electron(3)调用第三方DLL
    Electron(1)概述
    Java SpringMVC(6)Mybatis-Plus
    Socket粘包问题的3种解决方案
    HTTP
    2020再见 2021你好
    再谈领域驱动设计
    使用Domain-Driven创建Hypermedia API
    使用函数式语言来建立领域模型--类型组合
    PHP安装扩展
  • 原文地址:https://www.cnblogs.com/kissfancy/p/5726194.html
Copyright © 2011-2022 走看看