一、maven环境配置
从阿帕奇官网下载maven压缩包,官网地址:http://maven.apache.org/download.cgi
将下载文件解压,然后设置maven环境
如果你配置过jdk的话,这里对你应该不难。如我的maven环境为:D:\Program Files\apache-maven-3.3.9
我的电脑-----属性----高级-----环境变量-----环境变量-----新建
变量名:MAVEN_HOME
变量值:D:\Program Files\apache-maven-3.3.9
找到path
在环境变量值尾部加入:;%MAVEN_HOME%\bin;---前面注意分号
也可以直接在path 路径下加入:;D:\Program Files\apache-maven-3.3.9\bin
我新建立
打开命令提示符(开始---运行---cmd),输入java -version,javac,mvn -version检查我们的java环境和maven环境是否有误。
2、修改仓库位置
修改我们仓库地址,仓库用于存放我们项目所依赖的所有jar包。
我的仓库路径:D:\Program Files\maven\repo----这个路径是我自己创建,你可以将路径创建在任何位置。
我们打开 D:\Program Files\apache-maven-3.3.9\conf\目录下的setting.xml文件,设置成我们创建的仓库路径
下面我们用一个命令验证一下。打开命令提示符,输入:mvn help:system
该命令会打印出所有的java系统属性和环境变量。这些信息对我们日常的编程工作很有帮且。
如果运行的过程中没有错误,打开我们仓库 D:\Program Files\maven\repo,会发现里面多了一些文件。这些文件就是我们从maven的中央仓库下载到本地仓库的
三、maven命令
1. 创建Maven的普通java项目:
mvn archetype:generate
-DgroupId=packageName
-DartifactId=projectName
2. 创建Maven的Web项目:
mvn archetype:generate
-DgroupId=packageName
-DartifactId=webappName
-DarchetypeArtifactId=maven-archetype-webapp
3. 编译源代码: mvn compile
4. 编译测试代码:mvn test-compile
5. 运行测试:mvn test
6. 产生site:mvn site
7. 打包:mvn package
8. 在本地Repository中安装jar:mvn install
9. 清除产生的项目:mvn clean
10. 生成eclipse项目:mvn eclipse:eclipse
11. 生成idea项目:mvn idea:idea
12. 组合使用goal命令,如只打包不测试:mvn -Dtest package
13. 编译测试的内容:mvn test-compile
14. 只打jar包: mvn jar:jar
15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile
( -skipping 的灵活运用,当然也可以用于其他组合命令)
16. 清除eclipse的一些系统设置:mvn eclipse:clean
ps:
一般使用情况是这样,首先通过cvs或svn下载代码到本机,然后执行mvn eclipse:eclipse生成ecllipse项目文件,然后导入到eclipse就行了;修改代码后执行mvn compile或mvn test检验,也可以下载eclipse的maven插件。
mvn -version/-v 显示版本信息
mvn archetype:generate 创建mvn项目
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 创建mvn项目
mvn package 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件
mvn jetty:run 运行项目于jetty上,
mvn compile 编译
mvn test 编译并测试
mvn clean 清空生成的文件
mvn site 生成项目相关信息的网站
mvn -Dwtpversion=1.0 eclipse:eclipse 生成Wtp插件的Web项目
mvn -Dwtpversion=1.0 eclipse:clean 清除Eclipse项目的配置信息(Web项目)
mvn eclipse:eclipse 将项目转化为Eclipse项目
在应用程序用使用多个存储库
<repositories>
<repository>
<id>Ibiblio</id>
<name>Ibiblio</name>
<url>http://www.ibiblio.org/maven/</url>
</repository>
<repository>
<id>PlanetMirror</id>
<name>Planet Mirror</name>
<url>http://public.planetmirror.com/pub/maven/</url>
</repository>
</repositories>
mvn deploy:deploy-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar -DrepositoryId=maven-repository-inner -Durl=ftp://xxxxxxx/opt/maven/repository/
发布第三方Jar到本地库中:
mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:\client-0.1.0.jar
-DdownloadSources=true
-DdownloadJavadocs=true
mvn -e 显示详细错误 信息.
mvn validate 验证工程是否正确,所有需要的资源是否可用。
mvn test-compile 编译项目测试代码。 。
mvn integration-test 在集成测试可以运行的环境中处理和发布包。
mvn verify 运行任何检查,验证包是否有效且达到质量标准。
mvn generate-sources 产生应用需要的任何额外的源代码,如xdoclet。
本文来自CSDN博客,转载请标明出处:
常用命令:
mvn -v 显示版本
mvn help:describe -Dplugin=help 使用 help 插件的 describe 目标来输出 Maven Help 插件的信息。
mvn help:describe -Dplugin=help -Dfull 使用Help 插件输出完整的带有参数的目标列
mvn help:describe -Dplugin=compiler -Dmojo=compile -Dfull 获取单个目标的信息,设置 mojo 参数和 plugin 参数。此命令列出了Compiler 插件的compile 目标的所有信息
mvn help:describe -Dplugin=exec -Dfull 列出所有 Maven Exec 插件可用的目标
mvn help:effective-pom 看这个“有效的 (effective)”POM,它暴露了 Maven的默认设置
mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook 创建Maven的普通java项目,在命令行使用Maven Archetype 插件
mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main Exec 插件让我们能够在不往 classpath 载入适当的依赖的情况下,运行这个程序
mvn dependency:resolve 打印出已解决依赖的列表
mvn dependency:tree 打印整个依赖树
mvn install -X 想要查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行
mvn install -Dmaven.test.skip=true 给任何目标添加maven.test.skip 属性就能跳过测试
mvn install assembly:assembly 构建装配Maven Assembly 插件是一个用来创建你应用程序特有分发包的插件
mvn jetty:run 调用 Jetty 插件的 Run 目标在 Jetty Servlet 容器中启动 web 应用
mvn compile 编译你的项目
mvn clean install 删除再编译
mvn hibernate3:hbm2ddl 使用 Hibernate3 插件构造数据库
四、maven与eclipse整合
1、打开Eclipse,依次打开Windows-->Prefrences,点击Maven的右边的三角符号,以展开Maven的配置界面
2、之后,点击Maven下面的Installations,请点击Add,请选择你的Maven的安装目录,这里我的Maven的安装目录为D:\Program Files\apache-maven-3.3.9 ,选择你的Maven安装目录,并点击确定, 之后可以点击Apply,点击OK,即可完成
3、点击Maven下面的User Settings,设置mvn的settings.xml及其指向的mvn仓库位置,之后可以点击Apply,点击OK,即可完成
五、使用maven创建项目
1.命令方式创建Maven项目:
命令输入:mvn archetype:generate -DgroupId=com.mkyong -DartifactId=CounterWebApp -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false
当然这个空的项目,只有一个index.jsp页面,打包发布运行。
在命令行切换到CounterWebApp目录,执行:mvn package,构建成功后,CounterWebApp目录下多了一个target目录,在这个目录下会打包成CounterWebApp.war。
把这个war包拷贝到Tomcat的发布目录下(D:\Program Files\Apache Software Foundation\Tomcat7\webapps)就可以运行了。
代码上传至github
Github地址:https://github.com/Neonuu/CounterWebApp
2.eclipse中创建mven项目
新建mven项目,点击next
勾选第一个选项,点击next
填写信息,点击finish
项目可能报错,需要进行配置
右键工程——Properties——Project Facets,将Dynamic Web Module取消掉,选择Java的版本为1.7(与你自己的java环境版本匹配),点击Apply
然后保持在本窗口不变,勾选Dynamic Web Module,并选择版本为3.0
点击下方的Futher configuration acailable...,进入如下窗口,修改信息,勾选Generate web.xml deployment descriptor,点击ok
返回到Properties窗口,点击Apply,应用成功后,保持在Properties窗口,点击Deployment Assembly
点击ADD,选择Folder,点击Next
选择target——m2e-wtp——web-resources文件夹,点击finish
返回到Properties窗口,点击ok,项目不再报错
然后配置pom.xml,在<project>节点下添加:
<!-- 依赖servlet,导入servlet包 -->
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 声明jdk编译版本1.7 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<!-- tomcat插件 -->
<plugin>
<groupId>org.apche.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</build>
<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.zp</groupId>
<artifactId>test3</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<!-- 依赖servlet,导入servlet所需jar包 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 声明jdk编译版本1.7 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
<!-- tomcat插件 -->
<plugin>
<groupId>org.apche.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</build>
</project>
在pom.xml中配置了tomcat插件后,maven项目无需再部署到eclipse中或本地中的tomcat便能运行
更新maven项目,下载依赖所需的jar包:
右键工程——Maven——Update Project
运行:
右键工程——run as——run configuration...——goals:tomcat:run——点击run,项目运行