zoukankan      html  css  js  c++  java
  • Liferay7 BPM门户开发之43: Gradle依赖管理

    进入liferay v7.0,官方推荐使用Gradle进行依赖管理和发布,所以必须知道Gradle的用法,网上资料很多,不赘述

    只写依赖管理的分类

    一般用外部仓库依赖,也可以用本地文件依赖(依赖本地jar包),如:

    本地文件依赖

    dependencies { 
    //单文件依赖 
    compile files('libs/activiti-engine-5.21.0.jar') 
    //某文件夹的全部依赖 
    compile fileTree(dir: 'libs', include: '*.jar')

    其中libs目录,与build.gradle目录在同一个文件夹下。


    Gradle外部仓库依赖一般有两种写法:

    • 写法1:compile
    • 写法2:compile group XXX

    实际上都是一样的。

    比如activiti的依赖:

    compile group: 'org.activiti', name: 'activiti-engine', version: '5.21.0'

    如果熟悉Maven,会很熟悉,只是Maven用的是XML格式:

    <!-- https://mvnrepository.com/artifact/org.activiti/activiti-engine -->
    <dependency>
    <groupId>org.activiti</groupId>
    <artifactId>activiti-engine</artifactId>
    <version>5.21.0</version>
    </dependency>


    一堆Gradle依赖写在一起:

    compile group: 'joda-time', name: 'joda-time', version: '2.6'
    compile group: 'org.activiti', name: 'activiti-bpmn-converter', version: '5.21.0'
    compile group: 'org.activiti', name: 'activiti-process-validation', version: '5.21.0'
    compile group: 'org.activiti', name: 'activiti-image-generator', version: '5.21.0'
    compile group: 'org.apache.commons', name: 'commons-email', version: '1.4'
    compile group: 'org.apache.commons', name: 'commons-lang3', version: '3.3.2'
    compile group: 'org.mybatis', name: 'mybatis', version: '3.3.0'
    compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.6'
    compile group: 'org.slf4j', name: 'jcl-over-slf4j', version: '1.7.6'
    compile group: 'org.springframework', name: 'spring-beans', version: '4.1.5.RELEASE'
    compile group: 'org.activiti', name: 'activiti-engine', version: '5.21.0'

    Gradle仓库有4种使用方法,请按情况转换

    1、使用maven中央仓库:
    repositories { 
    mavenCentral() 
    }
    
    2、使用私有aven远程仓库:
    repositories { 
    maven { 
    url "http://repo.Yourcompany.com/public" 
    } 
    }
    
    3、远程Ivy仓库:
    repositories { 
    ivy { 
    url "http://repo.Yourcompany.com/public" 
    } 
    }
    
    4、本地Ivy仓库:
    repositories { 
    ivy { 
    url "../local-repo" 
    } 
    }

    可以使用多个仓库,Gradle会按顺序依次寻找,找到后会停止寻找,一般把最快的URL放最前边,最后放本地Ivy仓库。
    常用的仓库:
    http://central.maven.org/maven2/
    http://repo1.maven.org/maven2
    http://repo2.maven.org/maven2/


    发布你自己的JAR包

    发布artifacts到一个Maven私有仓库:

    apply plugin: 'maven'
    
    uploadArchives {
        repositories {
            mavenDeployer {
                repository(url: "file://localhost/tmp/myRepo/")
            }
        }
    }

    发布到远程公共仓库:

    uploadArchives {
        repositories {
            ivy {
                credentials {
                    username "username"
                    password "pw"
                }
                url "http://repo.mycompany.com"
            }
        }
    }
  • 相关阅读:
    uva 1605 building for UN ——yhx
    uva 120 stacks of flapjacks ——yhx
    uva133-S.B.S.
    Uva10082 WERTYU -S.B.S.
    Quicksum-S.B.S.
    NOIP2014提高组 DAY1 -SilverN
    NOIP2013普及组 -SilverN
    uva 1354 Mobile Computing ——yhx
    UVa 11292 Dragon of Loowater
    UVa 839 Not so Mobile
  • 原文地址:https://www.cnblogs.com/starcrm/p/6132785.html
Copyright © 2011-2022 走看看