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

简介: 不是吧阿sir,你不会还不知道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

image.png

设置该Token的名字与授权的权限


image.png



生成成功(记得保存好自己的TOKEN哟,如果遗失了也可以重新生成)

image.png

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

<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.pngimage.png

3. 设置项目的POM文件


  • 设置pom文件

<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可能还长这样


image.png

  • 但是一炷香之后...
  • 在项目中执行mvn deploy -Dmaven.test.skip=true将项目生成的依赖发布到github


image.png


现在看看~满满登登嘚


image.png


点进去还可以看到历史版本


image.png

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


image.png

5. 使用


  • 使用刚刚发布的依赖坐标

<dependency>
            <groupId>com.lazy.starter</groupId>
            <artifactId>lazy-cache</artifactId>
            <version>1.2.5</version>
        </dependency>
  • 如果出现无法下载的情况,需要在pom文件中添加仓库信息

<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


image.png


6. 🐂🍺


# 其他


相关文章
|
开发工具 git 开发者
2024最简七步完成 将本地项目提交到github仓库方法
该文章提供了一个简洁的七步教程,指导用户如何将本地项目提交到GitHub仓库。
2024最简七步完成 将本地项目提交到github仓库方法
|
7月前
|
开发工具 git C++
【够用就好002】外行第一次发布github项目仓库
#deepseek#自学 记录外行学习代码的历程 今天是上传自己的工具代码到github仓库,一直以来是伸手党克隆别人的项目,今天在deepseek的辅导下上传自己的内容。
|
3月前
|
Linux 网络安全 开发工具
在Linux下配置gitee与Github的远程仓库
注意,git push后,是输入你的账号与密码。这个步骤可以通过特殊设置省去,但是一开始还是不要太省。
159 0
|
8月前
|
开发工具 git
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
441 69
如何操作github,gitee,gitcode三个git平台建立镜像仓库机制,这样便于维护项目只需要维护一个平台仓库地址的即可-优雅草央千澈
|
5月前
|
文字识别 网络协议 开发工具
GitHub封锁?推荐5个国产的Git仓库替代平台
近日,GitHub对中国区IP的部分限制引发了广泛关注。未登录用户被拒,已登录用户功能受限,南北网络环境差异更显“内卷”。为应对这一挑战,本文推荐了多个国产Git平台:Gitee(码云)、GitCode(CSDN旗下)、CODING(腾讯系)、CodeUP(阿里云支持)及微信代码管理工具。这些平台功能全面、稳定性强,是开发者迁移项目的理想选择。通过同步代码、配置CI/CD流水线等简单步骤,可确保项目平稳过渡。此次事件提醒我们,掌握核心技能与支持国产平台同样重要!
2580 11
|
6月前
|
开发工具 git
vscode推送项目到github仓库故障解决1
本文介绍了如何优雅解决本地仓库与远程仓库历史记录不一致的问题,并提供避免未来问题的最佳实践。核心在于理解问题根源(如历史记录差异和常见原因),采用推荐的解决方案(先本地初始化再关联远程仓库),并遵循一致的工作流程、团队协作规范及熟悉 Git 命令。通过强制推送或合并无关历史记录等方式处理现有冲突,同时养成良好习惯以预防类似问题。
|
8月前
|
Devops Shell 网络安全
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
324 16
git使用之如何将一套代码同时推送至github|gitee|gitcode|gitlab等多个仓库-含添加ssh-优雅草央千澈完美解决-提供整体提交代码
|
9月前
|
机器学习/深度学习 人工智能 自然语言处理
PeterCat:一键创建开源项目 AI 问答机器人,自动抓取 GitHub 仓库信息、文档和 issue 等构建知识库
PeterCat 是一款开源的智能答疑机器人,能够自动抓取 GitHub 上的文档和 issue 构建知识库,提供对话式答疑服务,帮助开发者和社区维护者高效解决技术问题。
560 7
PeterCat:一键创建开源项目 AI 问答机器人,自动抓取 GitHub 仓库信息、文档和 issue 等构建知识库
|
敏捷开发 Java 持续交付
阿里云云效产品使用合集之maven仓库是否可以代替自建的Nexus
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
9月前
|
人工智能 前端开发 Linux
github是怎么用的,如何下载仓库
github是怎么用的,如何下载仓库

热门文章

最新文章

推荐镜像

更多