dependencies - 如何将我的开源 Artifact 放入 Maven 存储库?

标签 dependencies repository maven dependency-management artifacts

我最近为我的开源库发布了第一个稳定版本 http://jooq.sourceforge.net .根据大众的需求,我想将我的 Artifact 放入一个 maven 存储库,但我不知道这究竟意味着什么。

我知道 maven 是一个依赖管理系统。我知道我必须为我的交付物创建描述性的 XML 文件。问题是

  • 如何创建该 XML 文件(包含什么信息)?
  • 我对 log4j 有(可选)依赖。我该如何指定?
  • 我在哪里添加 XML 文件(即在每个 .jar 文件中?在 .zip 文件中)
  • 我可以在哪里上传我的 Artifact ?是否有任何公共(public)存储库,我可以从我的项目网站中引用?
  • 我将上传什么到该存储库?
  • 最佳答案

    发布该项目实际上并没有太多工作,但我强烈建议您先看一下 maven 的基本概念,因为一开始可能会很困惑。

    可以在此处找到如何将项目发布到 maven 中央存储库的指南:
    http://maven.apache.org/guides/mini/guide-central-repository-upload.html

    在发布之前,您需要为您的项目构建一个有效的 Maven 构建。因此,您基本上需要做两件事:创建一个 pom.xml 并稍微重组您的源存储库,因为 maven 严重依赖于约定而不是配置。
    源存储库最终应该符合 maven 标准目录布局。对于您的项目,将所有 javacode 移动到名为 src/main/java 的文件夹可能就足够了

    pom.xml 需要在项目源的根目录下创建。它需要满足中央存储库的要求,并且必须包含与项目相关的任何内容,例如名称、许可证信息、依赖项等。上面链接的指南包含它的框架,可以在链接的 sonatype 页面上找到详尽的描述指导。

    (由于我是新用户,很遗憾我不能在这篇文章中添加多个链接)

    关于dependencies - 如何将我的开源 Artifact 放入 Maven 存储库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4288661/

    相关文章:

    git 检查工作副本存储库是否存在并验证它

    Github:与另一个组织共享私有(private)存储库

    java - Spring data mongodb repository findAll字段排除

    java - Java 9 spring boot 应用程序的 maven 构建期间的 RuntimeException

    node.js - 引擎 "node"与此模块不兼容

    grails - Grails和PlayORM

    r - 在构建包时导入除一个包外的所有功能

    java - Maven依赖树的替代品

    java - Heroku 本地应用程序测试控制台中缺少 System.out

    c# - 如何使用依赖注入(inject)完成可变对象重构?