引
Android做元件化,項目aar包需要上傳到Maven倉庫,項目之間還存在互相依賴的情況。網上找了很多:通過AS直接配置gradle,直接在build上傳,不适用互相依賴的情況,或許是還有其他的配置;直接通過Sonatype Nexus上傳,也有問題,幾乎都是2.+版本的搜尋結果,界面的改動相當大,是以做個簡單的筆記。
正
1.直接上傳單個檔案
進入某個倉庫,點選upload component進入上傳頁面:
上傳成功後檔案的目錄結構大緻如下:
2通過pom檔案上傳
我這裡是為了解決互相依賴的問題。
首先,編寫pom檔案,大緻格式:(感覺和gradle配置依賴差不多)
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.zhangsan.text</groupId>
<artifactId>test</artifactId>
<version>1.0.9</version>
<packaging>aar</packaging>
<dependencies>
<groupId>org.greenrobot</groupId>
<artifactId>eventbus</artifactId>
<version>3.2.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>cn.jiguang.sdk</groupId>
<artifactId>jpush</artifactId>
<version>3.6.8</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>cn.jiguang.sdk</groupId>
<artifactId>jcore</artifactId>
<version>2.4.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.github.bumptech.glide</groupId>
<artifactId>glide</artifactId>
<version>4.11.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.github.donkingliang</groupId>
<artifactId>GroupedRecyclerViewAdapter</artifactId>
<version>1.3.0</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
然後,同時上傳aar和pom檔案:
3就可以在項目中聲明倉庫位址、添加項目依賴了。
小細節:
上傳錯了,然後删掉,再上傳相同的版本短時間内會上傳失敗。是以最好是每次都把版本+1,避免玄學程式設計。