如果我使用Eclipse,为什么还需要Maven?

5 java eclipse maven

我已经看到,如果我右键单击Eclipse中的项目并选择在服务器上运行它,那么我可以看到输出,这意味着项目正在运行.

如果没有Maven一切正常,那么使用它有什么意义.它与仅通过eclipse运行它有什么不同?

Nis*_*ant 15

Maven是一个构建工具(实际上是构建管理器),类似于ANT.任何构建工具的主要工作是配置项目,使用所需项目进行编译并进行最终打包.项目中的构建脚本提供了项目可交付结构的蓝图.这使您免于像Eclipse这样的特定IDE的任何可配置依赖项.您需要知道的只是执行构建的标准命令,您几乎可以在任何地方构建代码.

现在,回到你的问题,为什么不在Eclipse中做到这一点?

对于一个简单的项目和小团队Maven是一个矫枉过正.您可以轻松地传达配置,要使用的IDE,并指示要采取的任何特殊步骤.然而,在大型项目中,存在大量松散耦合的依赖项.首先,开发人员机器构建,测试构建和生产构建将有不同的设置.需要运行自动化测试,集成测试,将构建包(工件)存储到通常可访问的存储库,更新各种模块的版本.

显然,如果上面提到的所有步骤都是手动完成的,那么就有可能错过一个步骤.而且,手动过程是耗时的.

理想情况下,您应该选择最适合您的工具.如果你认为你能够在没有Maven的情况下实现你所需要的,那么仅仅因为每个人都使用它而不使用Maven/build-tool是有意义的.

建议学习自动部署,这将为您提供有关使用构建工具可以完成的所有工作的更大图景.如果您觉得它不会为您当前的流程增加任何价值,那么您现在可能不需要Maven或任何其他构建工具.


Coo*_*ans 5

你的问题没有多大意义.您是否希望您的用户从eclipse访问您的应用程序?如果是这样,在我看来这是一个非常奇怪的设置.

也许你的问题应该是如何建立你的项目.Maven为您提供了一种在整个企业中集中依赖库的方法.它可以让您自动化构建过程(最有可能与Hudson,巡航控制等CI服务器结合使用).它可以让您自动化单元测试.Maven使应用程序的包装非常容易.开发人员不必遵循神秘的步骤来打包应用程序.您添加了正确的插件,maven将其作为构建生命周期的一部分进行处理.由于约定优于配置的原则,所有这些魔法都可能发生.还有更多好处,我只举几例.

Maven并没有取代您运行应用程序的方式,而是如何打包应用程序,自动化该过程以及管理应用程序的依赖关系.

关于为什么有人应该使用maven的一些链接: -