我想使用Maven构建我的下一个Java项目。 所以在开始之前我对Maven有一些疑问。
是否需要安装Maven?或者可以将Maven二进制文件复制到系统(Windows)并以相同的方式使用。
需要设置Maven项目吗? 从Maven教程我已经看到,Maven的第一步是设置这样的Maven项目:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
为什么?当我只想编译一些Java文件并包含一些罐子时,写POM文件是不够的?
答案 0 :(得分:2)
- 是否需要安装Maven?或者可以将Maven二进制文件复制到系统(窗口)并以相同的方式使用。
醇>
Maven捆绑为zip
存档that you just need to unzip。然后,您需要将bin
目录添加到PATH环境变量中,您可以继续使用。
- 醇>
需要设置Maven项目吗?从Maven教程我看到,Maven的第一步是设置一个像这样的Maven项目:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
有多种方法可以创建Maven项目。但是,重要的是要记住,Maven项目只能归结为只有一个pom.xml
文件。该文件将位于项目的根目录中。所以当你说“编写一个POM文件就足够了”时,你是对的。
现在,由于Maven是一个在convention-over-configuration principle下构建的工具,因此创建了几个实用程序来帮助遵守Maven的基本约定。其中一个实用程序是maven-archetype-plugin
,它由mvn archetype:generate
调用调用。此实用程序将与standard directory layout一起创建基本的pom.xml
文件。
如果您使用的是IDE,您还可以使用此IDE的相应Maven插件创建Maven项目(例如,对于Eclipse,这是M2Eclipse插件)。
答案 1 :(得分:2)
问题1(安装):
好吧,它主要是复制,添加到路径,然后运行。
然而,在现实世界中,还有更多。例如,
- 在公司中,您可能希望拥有公司中央存储库代理。您需要在HOME/.m2/settings.xml
或MVN_DIR/conf/settings.xml
中进行额外设置(希望我记得正确的路径:P)
在某些情况下,您可能希望将本地存储库放在不同的目录中,您还需要更改settings.xml
。
为了构建大型项目,您可能需要调整M2_OPTS
环境变量。
等...
所有这些都是您可能需要的额外手动安装工作(虽然不难)
问题2(原型):
你其实是对的。您可以简单地编写自己的pom.xml
并忘记原型(这也是我过去所做的:)。您可以将Archetype视为一些模板项目生成功能,以便您可以生成一些预定义的项目类型,并且POM中必需的项目目录结构,所需的依赖项和设置都已完成。当然,您甚至可以提供自己的原型,因此贵公司的新项目可以利用它们来符合您想要的指南或标准。
答案 2 :(得分:1)
回答第1个问题:
Maven以分布式二进制格式提供。您只需下载它并在本地计算机中提取它。然后,您必须创建一个名为M2_HOME的用户变量(有时需要M2_OPTS)并将其添加到PATH变量。这就是您建立基本需求所需的全部内容
如果您的系统位于某个代理网络内,则必须执行一个其他设置。这是复制下载文件中可用的secuirity xml,并根据您的网络修改其中的元素值。
回答第1个问题:
第一次需要使用您指定的命令。获得文件结构后,您可以根据需要重复使用它。 但请记住遵循预定义的文件结构,否则您肯定会遇到麻烦。
但是,始终建议使用maven命令创建项目,因为如果您选择手动创建项目,则可能需要手动执行许多操作。