Nexus和Maven有什么区别?

时间:2014-04-15 11:40:46

标签: maven nexus

Nexus Maven 有什么区别?

仅使用 Maven 的基本方案是什么?仅考虑 Nexus 的情况怎么样?当我想要同时使用它们时它看起来如何?

3 个答案:

答案 0 :(得分:131)

Sonatype NexusApache Maven是两个经常协同工作的软件,但它们完成了不同的工作。 Nexus提供了一个存储库,而Maven使用存储库来构建软件。

以下是“What is Nexus?”的引用:

  

Nexus管理开发所需的软件“工件”。如果您开发软件,您的构建可以从Nexus下载依赖项,并可以将工件发布到Nexus,从而创建一种在组织内共享工件的新方法。虽然中央存储库始终为开发人员提供了极大的便利,但您不应该直接使用它。您应该使用Nexus代理Central并维护自己的存储库以确保组织内的稳定性。   使用Nexus,您可以从一个位置完全控制组织中每个工件的访问和部署。

这里引用了“Maven and Nexus Pro, Made for Each Other”来解释Maven如何使用存储库:

  

Maven通过检索构建应用程序所需的工件并将构建过程的结果部署到存储库中来利用存储库的概念。 Maven使用结构化存储库的概念,因此可以检索组件以支持构建。这些组件或依赖项包括库,框架,容器等.Maven可以识别存储库中的组件,了解它们的依赖关系,检索成功构建所需的所有内容,并在构建完成时将其输出部署回存储库。

因此,当您想要使用两者时,您将拥有由Nexus管理的存储库,Maven将访问此存储库。

答案 1 :(得分:9)

这有一个很好的一般描述: https://gephi.wordpress.com/tag/maven/

让我发表一些可以突出重点的声明:

  1. 我们将代码库从Ant迁移到Maven

  2. 所有第三方图书馆都已上传至Nexus。 Maven使用Nexus作为图书馆的来源。

  3. 像Sonatype这样的存储库管理器的基本功能是:

    • 管理项目依赖项,
    • 文物&元数据,
    • 代理外部存储库
    • 并部署打包的二进制文件和JAR以与其他开发人员和最终用户共享这些工件。

答案 2 :(得分:1)

无论我从学习中理解什么,我认为它是在这里。我从书中引用了一些我学到的东西。 Nexus Repository Manager和Nexus Repository Manager OSS作为存储库管理器启动 支持Maven存储库格式。虽然它现在支持许多其他存储库格式,但是 Maven存储库格式仍然是构建和配置最常用且支持良好的格式 在JVM及更高版本上运行的工具。 本章显示了使用Apache Maven和a的存储库管理器的示例配置 其他工具的数量。设置利用合并许多存储库并通过它们公开它们 存储库组。除了使用的配置外,本章还记录了此设置 具体工具。

Details