Maven环境的配置

来源:互联网 发布:ipad淘宝在哪里看微淘 编辑:程序博客网 时间:2024/05/17 03:53

1、maven的安装
2、path的配置
3、setting.xml文件的配置
4、在老版本的Eclipse 中没有集成Maven,之前需要安装M2E的插件,现在新版本的Eclipse中都集成了Maven,所以插件也不需要安装了。
5、直接 Preferences –> maven

注意:之前一直运行会有错误,pom文件错误,主要是因为设置不正确。

如下图所示:

这里写图片描述
上面这张图想表示的是,在高版本的Eclipse中已经内部集成了相应的Maven,不需要单独安装m2e插件。

这里写图片描述
注意,默认情况下选中的是Name 为 EMBEDDED的复选框,这是Eclipse内嵌的Maven,一般不推荐使用,所以需要勾选 apache-maven-3.39 是单独安装的maven。

这里写图片描述

最后一张中User Settings 设置的时候,之前由于Global Settings也进行了设置并且和User Settings一样,所以创建工程的时候,一直会有错误。去掉之后就一切正常了。

6、Maven常用的命令
必须的一步:首先得进入到项目的src目录下,这样maven才能找到pom文件。
mvn clean
编译的时候会在工程的target目录下生成class文件,执行此命令会清空class文件。
mvn compile
执行源代码的编译,生成class文件。
mvn clean compile
执行编译前,先清空之前生成的class文件,然后生成新的文件
mvn clean test
在maven项目中源代码和测试代码是分开的。此命令是对test代码进行编译(使用此命令,可以执行项目中所有的单元测试,并可以根据测试报告,得知哪个单元测试是失败的,哪些是成功的。相比现在项目中使用Ant编译,效率是很低的。第一手动添加依赖,手动替换class文件,没有安装自动编译的插件。不能完整的打包jar,多少次加班是因为替换的class文件多,自己替换错误导致的。很多时候,工作忙,是因为事情繁琐吗?还是办法太笨,效率太低导致的?这个得思考了,计算机本身就是为效率服务的,应该有懒人思想,并不是笨牛就行。重复三次以上,就要考虑自动化了。

mvn package
编译和测试执行完成之后,执行此命令,可以对项目进行打包,并生成相应的jar。

mvn install
此命令作用是打包项目,并且放置在maven的本地仓库中。

注意: 除了执行命令行外,IDE也可以执行。选中项目,点击右键,就会有相关的命令选择。

思考:如何使用maven管理,项目之间jar包的依赖??
方案一:假设两个maven项目,一个是Hello,一个是Good。
其中Good项目有方法需要调用Hello中的某个API,需要将Hello依赖到Good项目中来。
方法:首先对Hello项目执行maven install操作,目的是使在maven的本地仓库中有jar包。
然后在Good项目的pom.xml中配置Hello项目的groupId和artifactId。
这样根据pom文件,就编译的时候,就可以找到Hello项目了。

缺点:项目中其他模块的jar包,我们能够对其执行mvn install吗?不可能吧。不知道有没有更实际的方法。

mvn source:jar
进入项目的pom文件所在目录,执行命令:mvn source:jar
能够在项目的target目录下打包生成项目源码的jar。

另外一种方法:
在pom进行配置,并且执行mvn install 命令,可以使得在本地库中生成源码。

<build>    <plugins>        <plugin>        <groupId>org.apache.maven.plugins</groupId>        <artifactId>maven-source-plugin</artifactId>        <version>2.1</version>          <executions>            <execution>                <phase>package</phase>                  <goals>                <goal>jar</goal>                </goals>            </execution>        </executions>        </plugin>    </plugins></build>

配置中指定了phase为compile,意思是在生命周期compile的时候就将源文件打包,即只要执行的mvn命令包括compile这一阶段,就会将源代码打包。同样,phase还可以指定为package、install等等。

mvn的生命周期包括,编译(clean)、打包(package)、本地安装等(install)。

0 0