【常用命令】
mvn validate //验证工程是否正确,所有需要的资源是否可用mvn compile//编译项目的源代码mvn test-compile //编译项目测试代码mvn test //使用已编译的测试代码,测试已编译的源代码mvn package //已发布的格式,如jar,将已编译的源代码打包mvn integration-test //在集成测试可以运行的环境中处理和发布包mvn verify //运行任何检查,验证包是否有效且达到质量标准mvn install //把包安装在本地的repository中,可以被其他工程作为依赖来使用mvn deploy //在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享mvn generate-sources //产生应用需要的任何额外的源代码,如xdocletmvn archetype:generate //创建 Maven 项目mvn compile //编译源代码mvn test-compile//编译测试代码mvn test //运行应用程序中的单元测试mvn site //生成项目相关信息的网站mvn clean //清除目标目录中的生成结果mvn package //依据项目生成 jar 文件mvn install //在本地 Repository 中安装 jarmvn eclipse:eclipse //生成 Eclipse 项目文件【生成项目】JAVA项目 mvn archetype:generate -DgroupId=com.demo -DartifactId=Appweb 项目 mvn archetype:generate -DgroupId=com.demo -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp【生成eclipse项目】普通eclipse项目 mvn eclipse:eclipseeclipse WTP项目 mvn eclipse:eclipse -Dwtpversion=1.0(wtp1.0+可用)eclipse->file->import->General->Existing Projects into WorkspaceWindow->Preferences->Java->Build Path->Classpath VariablesNew 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.jarruntime 只在运行时使用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-archetype2、修改主要模板文件:archetype-resources/pom.xml1)修改 META-INF/maven/archetype.xml 中相关的 sources2)安装此项目:mvn install3、根据模板项目创建新项目:mvn archetype:generate-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>生成项目 建一个 JAVA 项目 : mvn archetype:create -DgroupId=com.test -DartifactId=App 建一个 web 项目 : mvn archetype:create -DgroupId=com.test -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp 解释: archetype 是一个内建插件,它的create任务将建立项目骨架 archetypeArtifactId 项目骨架的类型 groupId 项目的java包结构,可修改 artifactId 项目的名称,生成的项目目录也是这个名字,可修改 可用项目骨架有: maven-archetype-archetype maven-archetype-j2ee-simple maven-archetype-mojo maven-archetype-portlet maven-archetype-profiles (currently under development) maven-archetype-quickstart maven-archetype-simple (currently under development) maven-archetype-site maven-archetype-site-simple maven-archetype-webappweb项目目录结构的布局:
详见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. 解决方式为: 1.创建一个Eclipse的启动的快捷方式,在其启动路径后添加-vm 你的JDK安装路径\bin\javaw.exe 2.在eclipse的安装目录下打开eclipse.ini中的-vmargs上面添加-vm 你的JDK安装路径\bin\javaw.exe eclipse导入创建的web项目问题 在用eclipse导入web项目时 如果eclipse安装了wtp插件在会自动将其转化为eclipse认得到的web项目,在项目上面点击右键run as 的run on server可以用,但是当eclipse没有安装wtp插件时run on server则不用,此时的解决方式为用命令行切换到项目的根目录然后执行 mvn eclipse:eclipse –Dwtpversion=1.0即可解决。原文: