在github上托管Maven存储库(包含源代码和javadoc)
如何通過maven將小型開源庫提供給其他開發人員? 一種方法是將其部署在Maven Central Repository上 。 我想要做的是將其部署到github ,因此我可以自由地對其進行修改。 這篇文章將告訴您如何做到這一點。
我將工件部署到github的典型方法是使用mvn deploy 。 步驟如下:
- 使用site-maven-plugin將工件推送到github
- 使用maven-javadoc-plugin推送Javadoc
- 使用maven-source-plugin推送源
- 配置Maven以將遠程mvn-repo用作Maven存儲庫
配置Maven部署插件
首先,我添加以下代碼片段以告知Maven將工件部署到目標目錄內的臨時位置:
<distributionManagement><repository><id>internal.repo</id><name>Temporary Staging Repository</name><url>file://${project.build.directory}/mvn-repo</url></repository> </distributionManagement> <plugins><plugin><artifactId>maven-deploy-plugin</artifactId><version>2.8.1</version><configuration><altDeploymentRepository>internal.repo::default::file://${project.build.directory}/mvn-repo</altDeploymentRepository></configuration></plugin> </plugins>配置Maven
然后,我將我的github.com身份驗證信息添加到~/.m2/settings.xml以便github site-maven-plugin可以將其推送到github:
<settings><servers><server><id>github</id><password>OAUTH2TOKEN</password></server></servers> </settings>要么
<settings><servers><server><id>github</id><username>GitHubLogin</username><password>GitHubPassw0rd</password></server></servers> </settings>就我個人而言,我更喜歡第一種方法,因為它更安全(無需明確顯示密碼)。 要獲取github項目的OAUTH2TOKEN ,請轉到settings --> Applications --> Genreate new token
配置site-maven-plugin
配置site-maven-plugin從我的臨時位置上傳到github上的mvn-repo分支:
<plugin><groupId>com.github.github</groupId><artifactId>site-maven-plugin</artifactId><version>0.9</version><configuration><message>Maven artifacts for ${project.version}</message><noJekyll>true</noJekyll><outputDirectory>${project.build.directory}/mvn-repo</outputDirectory><branch>refs/heads/mvn-repo</branch><includes><include>**/*</include></includes><repositoryName>pengyifan-commons</repositoryName><repositoryOwner>yfpeng</repositoryOwner><server>github</server></configuration><executions><execution><goals><goal>site</goal></goals><phase>deploy</phase></execution></executions> </plugin>寫這篇文章時,存在0.9版site-maven-plugin 。 要解決此問題,請git clone 0.10-SNAPSHOT版本,并手動mvn install 。
配置maven-source-plugin
要將源代碼包添加到mvn-repo中,我們需要配置maven-source-plugin 。 在pom.xml添加以下代碼:
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-source-plugin</artifactId><version>2.3</version><executions><execution><id>attach-sources</id><goals><goal>jar</goal></goals></execution></executions> </plugin>配置Maven-javadoc-plugin
要將java doc軟件包添加到mvn-repo中,我們需要配置maven-javadoc-plugin 。 在pom.xml添加以下代碼:
<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><executions><execution><id>attach-javadocs</id><goals><goal>jar</goal></goals></execution></executions> </plugin>現在運行mvn clean deploy 。 我看到maven-deploy-plugin將文件“上傳”到目標目錄中的本地暫存庫中,然后site-maven-plugin提交這些文件并將其推送到服務器。
要驗證所有二進制文件是否存在,請在瀏覽器中訪問github ,然后選擇mvn-repo分支。
配置Maven以將遠程mvn-repo用作Maven存儲庫
我們應該采取的另一步驟是配置任何poms以知道我們的存儲庫在哪里。 我們可以將以下代碼段添加到任何項目的pom.xml中:
<repositories><repository><id>PROJECT-NAME-mvn-repo</id><url>https://raw.github.com/USERNAME/PROJECT-NAME/mvn-repo/</url><snapshots><enabled>true</enabled><updatePolicy>always</updatePolicy></snapshots></repository> </repositories>翻譯自: https://www.javacodegeeks.com/2014/09/hosting-a-maven-repository-on-github-with-sources-and-javadoc.html
總結
以上是生活随笔為你收集整理的在github上托管Maven存储库(包含源代码和javadoc)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java转换难题者,不适合工作(或面试)
- 下一篇: 电脑上好用的绘画软件有哪些(哪种电脑绘画