mvn compile//编译项目的源代码
mvn test-compile
mvn test
mvn package
mvn integration-test //在集成测试可以运行的环境中处理和发布包
mvn verify //运行任何检查,验证包是否有效且达到质量标准
mvn install //把包安装在本地的repository中,可以被其他工程作为依赖来使用
mvn deploy //在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享
mvn generate-sources //产生应用需要的任何额外的源代码,如xdoclet
JAVA项目 mvn
web 项目 mvn
【生成eclipse项目】
普通eclipse项目 mvn eclipse:eclipse
eclipse WTP项目 mvn eclipse:eclipse -Dwtpversion=1.0(wtp1.0+可用)
eclipse->file->imp
Window->Preferences->Java->Build Path->Classpath Variables
New Name 命名:M2_REPO
路径:本地的 maven 类库地址(%USER_HOME%/.m2/repository)
【pom.xml 基本节点】
<project> 根节点
<modelversion> pom.xml 使用的对象模型版本
<groupId> 创建项目的组织或团体的唯一 Id
<artifactId> 项目唯一Id, 项目名
<packaging> 打包扩展名(JAR、WAR、EAR)
<version> 项目版本号
<name> 显示名,用于生成文档
<url> 组织站点,用于生成文档
<description> 项目描述,用于生成文档
<dependency>之<scope> 管理依赖部署
<scope> 可使用 5 个值:
compile 缺省值,用于所有阶段,随项目一起发布
provided 期望JDK、容器或使用者提供此依赖。如servlet.jar
runtime 只在运行时使用
test 只在测试时使用,不随项目发布
system 需显式提供本地jar,不在代码仓库中查找
【库版本选择】
<dependency>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-utils</artifactId>
<version>[1.1,)</version>
</dependency>
表达式 含义
(,1.0] version<=1.0
[1.2,1.3] 1.2<=version<=1.3
[1.0,2.0) 1.0<=version<2.0
[1.5,) 1.5<=version
(,1.1),(1.1,) version!=1.1
【定义自己的结构】
1、新建 archetype 项目(模板项目):
mvn archetype:genera -DgroupId=org.simple -DartifactId=simple -DarchetypeArtifactId=maven-archetype-archetype
2、修改主要模板文件:archetype-resources/pom.xml
1)修改 META-INF/maven/archetype.xml 中相关的 sources
2)安装此项目:mvn install
3、根据模板项目创建新项目:
mvn
-DarchetypeGroupId=org.simple\
-DarchetypeArtifactId= simple \
-DarchetypeVersion=1.0-SNAPSHOT
【安装私有库】
1、复制 mylib-1.2.3.jar 到本地代码库
2、编写 mylib-1.2.3.pom 文件:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mylib</groupId>
<artifactId>mylib</artifactId>
生成项目
解释:
可用项目骨架有:
web项目目录结构的布局:
详见http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html
Eclipse导入已存在的maven项目 :
在导入之前需要在项目根目录下面执行如下命令:
普通 Eclipse 项目执行 : mvn eclipse:eclipse Eclipse
web 项目执行 : mvn eclipse:eclipse –Dwtpversion=1.0
然后通过Eclipse的maven插件中选择导入已存在的maven项目即可将其导入。
学习过程中的问题:
安装好m2eclipse插件后一般会报错误:Eclipse is running in a JRE, but a JDK is required Some Maven plugins may not work when importing projects or updating source folders.
解决方式为:
eclipse导入创建的web项目问题
在用eclipse导入web项目时 如果eclipse安装了wtp插件在会自动将其转化为eclipse认得到的web项目,在项目上面点击右键run as 的run on server可以用,但是当eclipse没有安装wtp插件时run on server则不用,此时的解决方式为用命令行切换到项目的根目录然后执行 mvn eclipse:eclipse –Dwtpversion=1.0即可解决。