首页 > 解决方案 > 有时有效的 Maven 存储库

问题描述

我在 github 上托管了一个 java 项目。该项目位于此处

该项目实际上只是一个 java 库,我想为它创建一个 maven 存储库。因为这很棘手,所以我按照指南解释了要遵循的项目结构。他应用了一个技巧:创建一个名为“repository”的第二个分支。如您所见,jar 文件在那里。

Github Maven 设置

一切顺利,我进行了第一次构建,然后创建了一个 java“Hello World”项目来测试我是否可以使用这个新的 maven 依赖项。因此,我创建了一个带有依赖项的 pom 文件:

    <dependency>
        <groupId>brugo</groupId>
        <artifactId>brugo</artifactId>
        <version>0.1.0</version>
    </dependency>

为了告诉 maven 在哪里可以找到这个依赖项,我添加了这个:

<repositories>
    <repository>
        <id>brugo</id>
        <url>https://github.com/brugo/brugo/raw/repository/</url>
        <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
        </snapshots>
    </repository>
</repositories>

好消息:有时它有效。坏事:有时它不起作用。

我正试图找出可能出了什么问题。这就是 IntelliJ 出现问题时的样子: 在 IntelliJ 中

我已经看到了这个错误信息:

[ERROR] Failed to execute goal on project xxx: 
Could not resolve dependencies for project xxx: 
Could not find artifact brugo:brugo:jar:0.1.0 in
brugo (https://github.com/brugo/brugo/raw/repository/) -> [Help 1]

我尝试了mvn clean install -U几次,但没有成功。

昨天我在另一台计算机上遇到了同样的问题,然后突然我在不知道怎么做的情况下让它工作。

标签: mavengithub

解决方案


特别感谢@wargre 为我指明了这个方向。将其设置为直接在中央 maven 存储库中确实更容易(也更方便)。

http://central.sonatype.org/pages/ossrh-guide.html解释了所有必需的步骤。下面做一个总结。

第一次发布:

  1. 创建 JIRA 帐户和项目
  2. pom.xml在文件中添加插件
  3. 将更多元数据添加到pom.xml
  4. 下载/安装 GPG 并创建密钥
  5. 创建一个settings.xml包含您的凭据。
  6. mvn clean deploy
  7. 在暂存存储库中验证结果
  8. 高兴时释放,不满意时放弃并重试。
  9. 在 JIRA 票证上发表评论
  10. 在 Maven 中央存储库中欣赏结果。

连续发布:

  1. 更新版本号pom.xml
  2. mvn clean deploy
  3. 释放(手动/自动)

推荐阅读