在github上搭自己的maven私服
maven私服一般都是通过nexus搭建,公司内部局域网用这种方式自然是首选,首先代码安全,其次下载速度有保障。
当对于个人用户来说,我们更追求自由,局域网的方案是不可能的,互联网能访问才是王道。
互联网方案1:中央仓库的方案,对于开源项目来说自然是最好的,但是一些不是开源的包就不能在中央仓库发布了。而且中央仓库也不适合一些发布频率高的项目。
互联网方案2:在自己的云服务器上搭建nexus,一般云服务器都是1-2g小内存,跑自己项目才勉强够用,再加一个吃内存的大户不太现实。
互联网方案3:通过github搭自己的maven私服。
其实github packages 2019年就已经正式发布了。不知道为什么网上搜的github maven私服都是用site-maven-plugin插件这套东西。这个虽然可以发布,但是引用必须得通过raw.githubusercontent.com,所以你实际上必须把库公开才能引用,并不能算是私服,另外配置也不够简单。作为过来人,site-maven-plugin配置不够简单,不能私有,发布容易出异常,经常得发布几次才能成功。这里就不介绍了。
下面介绍怎么使用github packages
https://docs.github.com/cn/packages/using-github-packages-with-your-projects-ecosystem/configuring-apache-maven-for-use-with-github-packages
上面链接是教程,如果懒得看,我总结下:
1.新建空仓库作为私服仓库。
2.登录github后,在 https://github.com/settings/tokens 上面添加token。
3.用户配置:
在maven的settings.xml中添加用户名和token
<servers> <server> <id>github</id> <username>USERNAME</username> <password>TOKEN</password> </server> </servers>
4.发布:
在pom.xml添加以下内容,其中OWNER是你的用户名,REPOSITORY是你的github仓库名。添加后执行mvn deploy进行发布
<distributionManagement> <repository> <id>github</id> <name>GitHub OWNER Apache Maven Packages</name> <url>https://maven.pkg.github.com/OWNER/REPOSITORY</url> </repository> </distributionManagement>
5.引用:
在pom.xml添加以下内容,其中OWNER是你的用户名,REPOSITORY是你的github仓库名,如果你喜欢写在maven的settings.xml也没问题
<repositories> <repository> <id>github</id> <name>GitHub OWNER Apache Maven Packages</name> <url>https://maven.pkg.github.com/OWNER/REPOSITORY</url> </repository> </repositories>