首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

《Maven实战》读书笔记(2) Maven使用入门

2012-09-18 
《Maven实战》读书笔记(二) Maven使用入门第三章:Maven使用入门1.Maven项目的核心是pom.xml。POM(Project Obj

《Maven实战》读书笔记(二) Maven使用入门
第三章:Maven使用入门

1.Maven项目的核心是pom.xml。POM(Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建、声明项目依赖、等等。

2.

<project>   <modelVersion>4.0</modelVersion>   <groupId>com.fancy.mvnbook</groupId>   <artifactId>hello-world</artifactId>   <version>1.0-SNAPSHOT</version>   <name>Maven Hello World Project</name></project>


根元素的第一个子元素modelVersion定义了当前POM模型的版本,对于maven2及maven3来说,它只能是4.0.0.

这段代码中最重要的是包含groupId,artifactId和version的三行。这三行元素定义了一个项目基本的坐标,在maven的世界,任何jar,war或者pom都是基于这些基本的坐标进行区分的。

groupId定义了项目属于哪个组,这个组往往和项目所在的组织或者公司存在关联。

artifactId定义了当前maven项目在组中唯一的ID。

3.没有任何实际的java代码,我们就能够定义一个maven项目的POM,这体现了maven的一大优点,它能让项目对象模型最大程度与实际代码相独立,我们可以称之为解耦,或者正交性。

4.下面代码中有一个值为test的元素scope,scope为依赖范围,若依赖范围为test则表示该依赖只对测试有效。如果不声明依赖范围,那么默认为值就是compile,表示对主代码和测试代码都有效。

<dependency>   <groupId>junit</groupId>   <artifactId>junit</artifactId>   <version>4.7</version>   <scope>test</scope></dependency>


5.maven最主要的命令mvn clean compile:是清理target的内容并编译,mvn clean test:是执行测试,mvn clean package:是打包,mvn clean install:是将项目输出的jar安装到maven的本地仓库中。

6.为了生成可执行的jar文件,需要借助maven-shade-plugin,配置该插件如下:
<plugin>   <groupId>org.apache.maven.plugins</groupId>   <artifactId>maven-shade-plugin</artifactId>   <version>1.2.1</version>   <executions>       <phase>package</phase>       <goals>             <goal>shade</goal>       </goals>       <configuration>             <transformers>                  <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransFormer">                           <mainClass>com.juvenxu.mvnbook.helloworld.HelloWorld</mainClass>                  </transformer>             </transformers>       </configuration>   </executions></plugin>


6.使用Archetype生成项目骨架:如果是maven3,简单地运行mvn archetype:generate。如果是maven2,最好运行命令mvn org.apache.maven.plugin.plugins:maven-archetype-plugin:2.0-alpha-5:generate。

热点排行