【问题标题】:Upload Maven package's sources to MyGet repository将 Maven 包的源上传到 MyGet 存储库
【发布时间】:2020-10-21 19:34:43
【问题描述】:

我正在使用 Eclipse 和 Maven 创建一个 Maven 包,该包上传到 MyGet 以供其他用户使用。我想这样当我的包被引用为依赖项并因此从 MyGet 下载时,源附件也被下载。

我已经看到这种情况发生在例如 JOGL 库中 - 当我在 Eclipse 中的 Maven 项目引用 JOGL 时,我最终在与 JOGL 关联的 ~/.m2/repository 子目录中得到以下文件(以及其他文件) :

  • jogl-all-main-2.3.2.jar
  • jogl-all-main-2.3.2-sources.jar

在 Eclipse 中,如果我右键单击 jogl-all-main-2.3.2.jar 库并选择“属性”,它会将源附件显示为位于我的 .m2 文件夹中的 jogl-all-main-2.3.2-sources.jar。我不相信我做了任何事情来选择那个文件作为源附件。我认为它是自动发生的。

当我将我的包上传到 MyGet 时,它允许我上传一个或多个 jar 文件,但它希望每个 jar 文件都是一个包含 pom.xml 文件的 Maven 包,因此我无法上传源 jar 文件直接到 MyGet。

也许这是 MyGet 的一个限制,因为它不允许我并行上传源。我对 Maven 不够熟悉,不知道是否需要在 pom.xml 中为我的包指定。

【问题讨论】:

  • 请查看this answer。我相信 MyGet 应该支持标准 Maven 的 mvn clean javadoc:jar source:jar deploy 命令
  • @udalmik 那么您是否建议使用mvn 部署而不是MyGet 的Web 界面将允许我部署包含源代码的jar 文件?
  • 是的,我会尝试这种方式,将您的 MyGet 存储库添加到配置中
  • @udalmik 这似乎是个不错的选择。我已经得到maven deploy 成功将包推送到存储库。但它没有上传源/javadocs。我应该单独使用deploy-file 命令部署这些,还是有办法在执行deploy 命令时自动发生?
  • @udalmik:我能够使用mvn deploy 而不是使用MyGet 的GUI 来上传包。如果您想写一个答案,我会将其标记为批准的答案。

标签: eclipse maven myget


【解决方案1】:

请查看this answer。我相信 MyGet 应该支持标准 Maven 的命令:

mvn clean javadoc:jar source:jar deploy 

所以请尝试将您的 MyGet 存储库配置为注册表,并使用 Maven 的 CLI 而不是 MyGet 的 GUI 上传您的包。

【讨论】:

    猜你喜欢
    • 2011-05-01
    • 2018-03-11
    • 1970-01-01
    • 2015-04-22
    • 1970-01-01
    • 1970-01-01
    • 2013-07-09
    • 1970-01-01
    • 2018-02-24
    相关资源
    最近更新 更多