Nexus和Maven有什么区别?
只使用Maven的基本场景是什么?只考虑Nexus的情况又如何?当我想要同时使用两者时,该怎么做?
Sonatype Nexus和Apache Maven是两个经常一起使用但完成不同任务的软件。Nexus提供一个仓库,而Maven使用仓库来构建软件。
这里是来自“什么是Nexus?”的引用:
Nexus管理开发所需的软件“工件”。如果您开发软件,则可以从Nexus下载依赖项并将工件发布到Nexus,从而创建组织内共享工件的新方法。虽然中央仓库一直为开发人员提供了极大的方便,但您不应该直接访问它。您应该通过Nexus代理中央仓库,并维护自己的仓库以确保组织内的稳定性。 使用Nexus,您可以从单个位置完全控制对组织中每个工件的访问和部署。
以下是来自“Maven和Nexus Pro,天生一对”的引用,解释了Maven如何使用仓库:
Maven通过检索构建应用程序所需的工件并将构建过程的结果部署到仓库来利用仓库的概念。 Maven使用结构化仓库的概念,以便可以检索组件以支持构建。这些组件或依赖项包括库、框架、容器等。 Maven可以在仓库中识别组件,了解它们的依赖关系,检索构建成功所需的所有组件,并在构建完成后将其输出部署回仓库。
因此,当您想要同时使用两者时,将有一个由Nexus管理的仓库,而Maven将访问此仓库。
这里有一个很好的通用描述:https://gephi.wordpress.com/tag/maven/
让我来做几个陈述,以突出差异:
我们将代码库从Ant迁移到了Maven。
所有第三方库已上传到Nexus。Maven使用Nexus作为库的源。
仓库管理器(例如Sonatype)的基本功能包括: