将Maven依赖上传到Gitee Packages并让他人引用方案(AI)

一、完整上传示例(含代码)

  1. 创建 Gitee 仓库‌

    登录 Gitee → 新建仓库(如 maven-repo),‌不勾选‌初始化选项

    仓库类型建议选择 ‌公开‌(私有仓库需额外配置权限)‌

  2. 项目配置

    pom.xml中配置Gitee仓库地址和版本控制:

    xml 复制代码
    <distributionManagement>
      <repository>
        <id>gitee-release</id>
        <url>https://gitee.com/你的用户名/maven-repo/packages</url>
      </repository>
      <snapshotRepository>
        <id>gitee-snapshot</id>
        <url>https://gitee.com/你的用户名/maven-repo/packages/snapshots</url>
      </snapshotRepository>
    </distributionManagement>

    注意替换你的用户名maven-repo为实际值。

  3. 认证配置(settings.xml)

    在Maven的settings.xml中添加Gitee令牌认证:

    xml 复制代码
    <servers>
      <server>
        <id>gitee-release</id>  <!-- 与pom中的id一致 -->
        <username>你的Gitee账号</username>
        <password>{私人令牌}</password>
      </server>
    </servers>

    令牌需在Gitee的设置 > 安全设置 > 私人令牌生成(勾选projects权限)。

  4. 执行部署命令

    运行以下命令上传构件:

    bash 复制代码
    mvn clean deploy -DskipTests

    成功后可在Gitee仓库的Packages页面查看上传的JAR和POM文件。


二、其他项目引用示例

  1. 添加仓库声明

    在引用方的pom.xml中配置Gitee仓库:

    xml 复制代码
    <repositories>
      <repository>
        <id>gitee-repo</id>
        <url>https://gitee.com/你的用户名/maven-repo/packages</url>
      </repository>
    </repositories>
  2. 引用依赖

    按标准格式声明依赖:

    xml 复制代码
    <dependency>
      <groupId>com.example</groupId>
      <artifactId>demo-lib</artifactId>
      <version>1.0.0</version>
    </dependency>

    需确保groupId等与上传的POM文件一致。


三、优化建议

  1. 权限管理

    • 私有仓库需在Gitee的仓库设置 > 成员管理中添加协作者。
    • 敏感项目建议使用仓库作用域的私人令牌。
  2. 版本规范

    • 开发阶段使用1.0.0-SNAPSHOT(可覆盖)
    • 正式发布使用1.0.0(不可修改)。
  3. 自动化扩展

    结合Gitee Go流水线实现自动发布:

    yaml 复制代码
    - step: publish@release_artifacts
      name: publish_release
      artifactRepository: release
      version: 1.0.0.0
      autoIncrement: true

每次提交自动递增版本号并打Tag‌

相关推荐
回忆是昨天里的海11 小时前
k8s集群-节点间通信之安装kube-flannel插件
java·docker·kubernetes
信仰_27399324311 小时前
Mybatis-Spring重要组件介绍
java·spring·mybatis
盖世英雄酱5813611 小时前
java深度调试【第二章通过堆栈分析性能瓶颈】
java·后端
没有bug.的程序员11 小时前
AOP 原理深剖:动态代理与 CGLIB 字节码增强
java·spring·aop·动态代理·cglib
2401_8370885011 小时前
ResponseEntity - Spring框架的“标准回复模板“
java·前端·spring
lang2015092811 小时前
Spring Boot RSocket:高性能异步通信实战
java·spring boot·后端
默默coding的程序猿12 小时前
1.北京三维天地公司-实施实习生
java·sql·技术支持·面经·实施·实施工程师·三维天地
天天摸鱼的java工程师12 小时前
解释 Spring 框架中 bean 的生命周期:一个八年 Java 开发的实战视角
java·后端
尤老师FPGA12 小时前
LVDS系列32:Xilinx 7系 ADC LVDS接口参考设计(三)
android·java·ui
自由的疯12 小时前
Java 如何学习 Jenkins?
java·架构