Maven使用入门

Maven 使用入门

1. POM 文件

    类似于 Ant 的 build.xml 一样,Maven 项目的核心是 pom.xml。POM(Project

    Object Model,项目对象模型)定义了项目的基本信息,描述项目如何构建、

    声明项目依赖等等。

<project xmlns="http://maven.apache.org/POM/4.0.0" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 
		http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

	<groupId>com.lichee</groupId>
	<artifactId>lichee-core</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>lichee-core</name>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>

	<dependencies>
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>3.8.1</version>
			<scope>test</scope>
		</dependency>
	</dependencies>
</project>

    a)  project

         所有 pom.xml 的跟元素,声明相关的命名空间及 xsd 元素。

    b)  modelVersion

         指定当前 pom 模型的版本,对于 maven2 及 maven3,都是 4.0.0。

    c)  groupId

         定义项目所属组,往往和项目所在的组织或公司存在关联。简单的理解的话,

         可以理解成 package 的包名前缀,例如:com.lichee。

    d)  artifactId

         定义当前 maven 项目在组中唯一的 ID,简单理解的话,可以理解成项目的子模块,

         例如:lichee-core、lichee-common 等。每个不同的子模块都应该不一样。

    e)  version

         定义项目的版本信息,所有的模块版本信息应该是一样的。

     f)  name

         一个更友好的项目名称,不是必须,但是推荐为每个 POM 声明 name,便于交流。

    g)  packaging

         定义项目打包方式,例如:jar、pom、war。

    h)  properties

         定义项目的常用属性。

     i)  dependencie

         定义项目依赖的位置(坐标的作用)。

没有实际的 Java 代码,就可以定义一个 maven 项目的 pom。这体现一个优点,

项目对象模型最大程度的与实际代码相独立,可以称它为解耦或者正交性。很大程度上

避免了 Java 代码和 pom 代码的相互影响,升级时修改 pom 文件,Java 的日常开发

也基本不会涉及 pom 文件修改。

 

2. 项目结构

    Maven 一直保持着约定优于配置的思想,并最大化统一构建的标准化,

    吸收大量项目的经验,促进团队的标准化。

    a)  src/main/java

         源代码目录,所有 Java 源代码都在此目录。

    b)  src/main/resources

         资源文件目录,所有相关资源文件都在此目录。

    c)  src/main/webapp

         web 项目目录,所有相关 web 文件都在此目录。

    d)  src/test/java

         测试源代码目录,所有 Java 测试源代码都在此目录。

    e)  src/test/resources

         测试资源文件目录,所有相关测试资源文件都在此目录。

     f)  target

         输出目录,maven 构建产生的所有输出文件都在此目录。

3. 常用指令

    运行命令是 mvn + … 的方式。

    a)  archetype:create

         创建 Maven 项目。

    b)  compile

         编译源代码

    c)  test-compile

         编译测试代码

    d)  test

         运行应用程序中的单元测试

    e)  site

         生成项目相关信息的网站

     f)  clean

         清除目标目录中的生成结果

    g)  package

         依据项目生成 jar 文件

    h)  install

         在本地 Repository 中安装 jar

     i)  eclipse:eclipse

         生成 eclipse 项目文件

猜你喜欢

转载自iqeq00.iteye.com/blog/2024818
今日推荐