前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >不是吧阿sir,你不会还不知道Github可以当做Maven仓库吧

不是吧阿sir,你不会还不知道Github可以当做Maven仓库吧

作者头像
喜欢天文的pony站长
发布2020-06-29 12:18:52
1K1
发布2020-06-29 12:18:52
举报
文章被收录于专栏:RabbitMQ实战RabbitMQ实战

前几天听说github更新了UI,今天休假逛了逛,发现了一个好玩的东西。github居然可以用来作为Maven仓库。

# 基本Steps:

  1. 生成用于发布、安装和删除 GitHub 包的访问令牌。
  2. 配置你的.m2/settings.xml
  3. 设置你需要发布的maven项目。
  4. deploy。
  5. 愉快的使用
  6. say: ??

1. 生成TOKEN令牌

  • 路径:Settings -> Developer settings -> Person Access Tokens

image.png

image.png

  • 设置该Token的名字与授权的权限
  • 生成成功(记得保存好自己的TOKEN哟,如果遗失了也可以重新生成)

2. 设置你的.m2/settings.xml

代码语言:javascript
复制
<profiles>
    <profile>
      <id>github</id>
      <repositories>
        <repository>
          <id>central</id>
          <url>https://repo1.maven.org/maven2</url>
          <releases><enabled>true</enabled></releases>
          <snapshots><enabled>true</enabled></snapshots>
        </repository>
        <repository>
          <id>github</id>
          <name>GitHub OWNER Apache Maven Packages</name>
          <url>https://maven.pkg.github.com/OWNER/REPOSITORY</url>
        </repository>
      </repositories>
    </profile>
  </profiles>

  <servers>
    <server>
      <id>github</id>
      <username>USERNAME</username>
      <password>TOKEN</password>
    </server>
  </servers>
  • USERNAME替换为你的github账号。
  • TOKEN替换为第一步生成的访问令牌。
  • OWNER 替换为拥有该仓库的用户或组织帐户的名称
  • REPOSITORY 替换为包含项目的仓库的名称
  • 看起来长这样:

image.png

3. 设置项目的POM文件

  • 设置pom文件
代码语言:javascript
复制
<distributionManagement>
   <repository>
     <id>github</id>
     <name>GitHub OWNER Apache Maven Packages</name>
     <url>https://maven.pkg.github.com/OWNER/REPOSITORY</url>
   </repository>
</distributionManagement>
  • 注意id需要设置成第二步中设置的server.id
  • OWNER 替换为拥有该仓库的用户或组织帐户的名称
  • REPOSITORY 替换为包含项目的仓库的名称
  • 看起来长这样:

image.png

4. deploy

  • 到目前为止你的github-packages可能还长这样

但是一炷香之后...

  • 在项目中执行mvn deploy -Dmaven.test.skip=true将项目生成的依赖发布到github
  • 现在看看~满满登登嘚
  • 点进去还可以看到历史版本

image.png

  • 注意:同一个版本号不可重复deploy,否则会失败

5. 使用

  • 使用刚刚发布的依赖坐标
代码语言:javascript
复制
        <dependency>
            <groupId>com.lazy.starter</groupId>
            <artifactId>lazy-cache</artifactId>
            <version>1.2.5</version>
        </dependency>
  • 如果出现无法下载的情况,需要在pom文件中添加仓库信息
代码语言:javascript
复制
    <repositories>
        <repository>
            <id>github</id>
            <url>https://maven.pkg.github.com/FutaoSmile/LazyStarter</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
  • Downloading from github

6. ??

# 其他

  • Github相关文章地址: https://help.github.com/cn/packages/using-github-packages-with-your-projects-ecosystem/configuring-apache-maven-for-use-with-github-packages#authenticating-to-github-packages
  • 其他类型项目发布:Github https://help.github.com/cn/packages/using-github-packages-with-your-projects-ecosystem
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 喜欢天文 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • # 基本Steps:
  • 1. 生成TOKEN令牌
  • 2. 设置你的.m2/settings.xml
  • 3. 设置项目的POM文件
  • 4. deploy
  • 5. 使用
  • 6. ??
  • # 其他
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档