使用Jitpack發(fā)布開源Java庫的詳細(xì)流程
很久之前也寫過一篇使用Jitpack發(fā)布Android開源庫的文章,詳見Android發(fā)布項(xiàng)目到j(luò)itpack的完整步驟
近來因?yàn)楣ぷ髟?,又重新整理總結(jié)一些使用Jitpack的相關(guān)使用技巧,由于現(xiàn)在Java常用的構(gòu)建工具為Gradle和Maven,所以準(zhǔn)備分為兩大部分講解下這兩個(gè)構(gòu)建工具如何發(fā)布Jitpack的開源庫
gradle
gradle主要講解以Android項(xiàng)目為主,如果是普通的Java項(xiàng)目使用了gradle進(jìn)行了依賴管理,那么流程是一樣的,按照步驟來即可
發(fā)布流程
1.創(chuàng)建module
先是創(chuàng)建一個(gè)module,在里面實(shí)現(xiàn)你自己的相關(guān)代碼
輸入你自己想要的module名和包名,module名保留那兩個(gè)省略號(hào)(改后面的名字即可)
我這里則是創(chuàng)建了一個(gè)update的module作為示例,如下圖所示:
然后就可以在里面寫自己的代碼了(當(dāng)然,我這里是Android的項(xiàng)目,可以在里面寫Android的頁面等代碼),和平常開發(fā)一樣
2.Gradle插件設(shè)置
默認(rèn)各位做完了自己的開發(fā)工作,為了演示,我這里簡單地寫了個(gè)測試類,用來彈窗
首先,在項(xiàng)目的根gradle設(shè)置中增加以下代碼(其實(shí)就是個(gè)打包插件):
classpath 'com.github.dcendents:android-maven-gradle-plugin:1.4.1'
在module中的gradle文件增加下面代碼:
id 'com.github.dcendents.android-maven' //這里是我自己的github賬戶,需要改成你自己的 group = 'com.github.stars-one'
3.項(xiàng)目上傳github
這里不多說了,默認(rèn)各位都懂用github了
4.github創(chuàng)建relase版本
5.發(fā)布開源庫
訪問jitpack的官網(wǎng)https://jitpack.io/,輸入我們開源庫的名字,找到我們的開源庫,選擇get it
即可發(fā)布版本
發(fā)布的版本,需要等待一段時(shí)間(最長要15分鐘),由Jitpack服務(wù)器進(jìn)行編譯的操作,之后看到狀態(tài)
6.使用
之后再gradle文件添加倉庫源和依賴即可使用,可以貼心一點(diǎn)把此引用技巧補(bǔ)充到項(xiàng)目的readme.md
文件中,這樣便大功告成!
關(guān)于多模塊moudle
上面演示只是試了一個(gè)項(xiàng)目中存在單個(gè)module的情況,但是有時(shí)候我們一個(gè)項(xiàng)目可能分了幾個(gè)module,這幾個(gè)module之間有一個(gè)是必須的,而其他則是可選的,你們這個(gè)時(shí)候應(yīng)該如何操作呢?
答案很簡單,和上述的操作是一樣的
但是之后,在Jitpack發(fā)布成功后,你得手動(dòng)去看下log日志,來確定版本號(hào)
查看log直接翻到末尾處,可以查看到module
之后引用就不用多說了吧
implementation 'com.github.stars-one.android-component-libray:update:0.2' implementation 'com.github.stars-one.android-component-libray:webviewBase:0.2'
PS:這里需要注意,有多個(gè)module后,不要自以為之前那種方式是一次性引入全部依賴的,如下所示
//這樣依賴,項(xiàng)目中不會(huì)報(bào)錯(cuò),但是無法使用具體的類的(即引用無效) implementation 'com.github.stars-one.android-component-libray:0.2'
maven
上面主要是講解的了Gradle項(xiàng)目,再來補(bǔ)充下Maven項(xiàng)目
Maven相對于Gradle來說,就比較簡單了,只要你新建的是一個(gè)maven項(xiàng)目,上傳到github之后,按照上述的操作進(jìn)行發(fā)布即可
但是,為了方便使用,我們需要配置下只pom.xml,設(shè)置主要為了可以看注釋文檔和源碼,
pom.xml配置如下:主要是配置了下插件即可
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.2</version> <configuration> <!-- Compile java 7 compatible bytecode --> <source>1.7</source> <target>1.7</target> </configuration> </plugin> <plugin> <!-- Create sources.jar --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar</goal> </goals> </execution> </executions> <artifactId>maven-javadoc-plugin</artifactId> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugins> </build>
需要注意的是:最后使用Jitpack發(fā)布的時(shí)候,包名是com.github.stars-one,不會(huì)使用在pom.xml中定義的包名和版本號(hào),如下面兩個(gè)截圖可以說明:
關(guān)于多模塊module
多模塊的話,其實(shí)和單module有些類似,這里就不過多展開
不過,官方給的示例中,明確了可以直接導(dǎo)入所有所有依賴
官方實(shí)例項(xiàng)目
單module jitpack/maven-simple: Example Maven project demonstrating the use of
多module jitpack/maven-modular: Example multi-module Maven project
參考
Building :: Documentation for JitPack.io
小記多l(xiāng)ib module上傳JitPack_chidh的博客-CSDN博客
到此這篇關(guān)于使用Jitpack發(fā)布開源Java庫的文章就介紹到這了,更多相關(guān)Jitpack發(fā)布開源Java庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
詳談Java泛型中T和問號(hào)(通配符)的區(qū)別
下面小編就為大家?guī)硪黄斦凧ava泛型中T和問號(hào)(通配符)的區(qū)別。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-10-10Java中線程狀態(tài)+線程安全問題+synchronized的用法詳解
這篇文章主要介紹了Java中線程狀態(tài)+線程安全問題+synchronized的用法詳解,本文結(jié)合示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-04-04Java OpenCV圖像處理之仿射變換,透視變換,旋轉(zhuǎn)詳解
這篇文章主要為大家詳細(xì)介紹了Java OpenCV圖像處理中仿射變換,透視變換,旋轉(zhuǎn)的實(shí)現(xiàn),文中的示例代碼講解詳細(xì),快跟隨小編一起學(xué)習(xí)一下2022-10-10Java 在Word中創(chuàng)建郵件合并模板并合并文本和圖片的操作方法
通過Java程序展示如何來實(shí)現(xiàn)創(chuàng)建模板,并通過郵件合并功能來合并文本數(shù)據(jù)和圖片數(shù)據(jù)的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-07-07java調(diào)用opencv身份證號(hào)識(shí)別詳解
這篇文章主要為大家詳細(xì)介紹了java如何調(diào)用opencv實(shí)現(xiàn)身份證號(hào)的識(shí)別,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-03-03