java~gradle構建公用包並上傳到倉庫

java~gradle構建公用包並上傳到倉庫

咱們通常會把公用的代碼放在一個包裏,而後其它 項目能夠直接使用,就像你使用第三方包同樣!java

倉庫

存儲包的地方叫作倉庫,通常能夠分爲本地倉庫和遠程倉庫,本地通常用mavenLocal表示,在build.gradle中咱們均可以看到,通常在安裝包時,會優先從本地倉庫下載,這樣速度是最快的;遠程倉庫能夠在世界各地使用你的包包,提升了代碼的重用,面向對象裏叫作DRY原則。app

一 發到本地倉庫

bootJar.enabled = false表示你生成一個類庫項目,jar.enabled = true表示須要生成一個jar文件。maven

// 類型項目須要是非啓動項目,因此有如下設置
bootJar.enabled = false // 不要求啓動項目,不須要main方法
jar.enabled = true // 須要在build/libs下生成jar文件

apply plugin: "maven-publish"
task sourceJar(type: Jar) {
    from sourceSets.main.allJava
    classifier "sources" //定義一個標誌 (生成的jar包後面加上sources, 如: jlib-2.2.11-sources.jar)
}

publishing {
    publications {
        maven(MavenPublication) {
            from components.java    
            artifact sourceJar
        }
    }

    //定義目標倉庫 (包所存放的地方)
    repositories {
        mavenLocal()
    }
}

私有倉庫若是添加用戶名和密碼

repositories {
    maven {

        if (project.version.endsWith('-SNAPSHOT')) {
            url = "快照版本的nexus倉庫地址"
        } else {
            url = "release版本的倉庫地址"
        }

        credentials {
            username 'nexus倉庫用戶名'
            password 'nexus倉庫密碼'
        }
    }
    }
}
相關文章
相關標籤/搜索