使用GitHub的Package For Maven Register

生成一个 Personal Token

需要授权项

  • repo
  • write:packages
  • delete:packages

在 setting.xml 中配置

<servers>
    <server>
      <id>github</id>
      <username>github的用户名</username>
      <password>之前生成的token</password>
    </server>
</servers>

在项目的 pom.xml 中配置上传的仓库配置

我是专门建了一个 repo 用于存储 package

  <distributionManagement>
    <repository>
      <id>github</id>
      <name>GitHub Package For Maven</name>
      <url>https://maven.pkg.github.com/GitHub的用户名/仓库名</url>
    </repository>
  </distributionManagement>

打包并上传到 GitHub 的 package 仓库

mvn clean deploy

这里需要注意的是,如果是多模块的 maven 项目,务必在项目根目录下执行 mvn clean deploy

如果其中有部分模块不需要上传的,那就在该模块下的 pom.xml 中配置跳过上传到仓库

<properties>
    <maven.deploy.skip>true</maven.deploy.skip>
</properties>

导入依赖

在需要导入该程序包的时候,在 pom.xml 中声明依赖,并声明一个仓库来源

<repositories>
    <repository>
        <id>authentication-module</id>
        <url>https://<GitHub用户名>:<登录的token>@maven.pkg.github.com/NicknameID/MavenRegister</url>
    </repository>
</repositories>

建议用于程序包的 token 单独设置,只授予只读权限,避免在分发包的时候权限泛滥,导致的安全风险。

posted @ 2021-10-22 17:06  沐风之境  阅读(224)  评论(0编辑  收藏  举报