将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‌

相关推荐
Fireworkitte1 小时前
Apache POI 详解 - Java 操作 Excel/Word/PPT
java·apache·excel
weixin-a153003083161 小时前
【playwright篇】教程(十七)[html元素知识]
java·前端·html
DCTANT2 小时前
【原创】国产化适配-全量迁移MySQL数据到OpenGauss数据库
java·数据库·spring boot·mysql·opengauss
Touper.2 小时前
SpringBoot -- 自动配置原理
java·spring boot·后端
黄雪超2 小时前
JVM——函数式语法糖:如何使用Function、Stream来编写函数式程序?
java·开发语言·jvm
ThetaarSofVenice2 小时前
对象的finalization机制Test
java·开发语言·jvm
望获linux4 小时前
【实时Linux实战系列】CPU 隔离与屏蔽技术
java·linux·运维·服务器·操作系统·开源软件·嵌入式软件
JosieBook4 小时前
【Java编程动手学】使用IDEA创建第一个HelloJava程序
java·开发语言·intellij-idea
Thomas_YXQ4 小时前
Unity3D DOTS场景流式加载技术
java·开发语言·unity
summer夏1234 小时前
2025.07 做什么
java·android studio