Maven常用命令
2016-03-02 22:27
363 查看
生成一个Web工程,这个工程不是一个Eclipse标准的动态Web工程。
Xml代码![](http://boendev.iteye.com/images/icon_star.png)
mvn archetype:generate -DgroupId=com.aboy.webmap -DartifactId=webmap -DarchetypeArtifactId=maven-archetype-webapp
上面的命令中,有两个是自定义的:
-DgroupId=com.aboy.webmap:生成pom的<groupId>com.aboy.webmap</groupId>节点,主要是本工程生成的JAR包提给于其它工程依赖时,要用的。对于一个独立的工程,这个可以是随便一个字符串就行了,不过还是推荐使用用意义的字串,因为后面的文章将会介绍多个模块的应用时,就有用了。这个设置可以在生成后修改。
-DartifactId=webmap:将会生成的文件夹名,也是Eclipse中Web工程的名字。这个设置也可以在生成后修改。
2、这条命令执行完后,将会在当前目录下生成一个“webmap”文件夹,这就是一个POM工程了。
该文件夹下有一个“pom.xml”文件和一个“src"目录。
pom.xml文件将是修改的重点。
3、建立相关目录
删除src/main中的webapp目录,而增加java目录;
在src/下增加test目录,与main目录平行;
在src/test目录下增加java和resources目录。
至此,src目录结构为:
src
| --main
| | --java
| | --resources
| --test
| | --java
| | --resources
增加一个WebRoot目录,与src同级,这个目录是干什么的、以及里面的目录结构,我相信就不要说明了。
4、修改pom.xml文件
build里的内容也是可以自行修改的,以下几个特别说明下:
<finalName>ROOT</finalName>:发布前执行时,生成ROOT.war文件。
<outputDirectory>WebRoot/WEB-INF/classes</outputDirectory>:编译后的.class文件和源目录下的文件存放的地方,这个是最关键的。
其它的内容就没有什么可说明的了,看看就知道了,整个文件如下如示:
Xml代码
![](http://boendev.iteye.com/images/icon_copy.gif)
![](http://boendev.iteye.com/images/icon_star.png)
[b]<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.aboy.webmap</groupId>
<artifactId>webmap</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>webmap Maven Webapp</name>
<url>http://obullxl.iteye.com</url>
<dependencies>
<!-- logging -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.13</version>
</dependency>
<!-- test -->
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>ROOT</finalName>
<outputDirectory>WebRoot/WEB-INF/classes</outputDirectory>
<defaultGoal>install</defaultGoal>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.5</source>
<target>1.5</target>
<encoding>GBK</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>GBK</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webappDirectory>WebRoot</webappDirectory>
<warSourceDirectory>WebRoot</warSourceDirectory>
</configuration>
</plugin>
</plugins>
</build>
</project>
5、生成eclipse工程
pom.xml文件搞定了,剩下的工作就是敲敲命令了,其它的事情让Maven帮我们搞定。
Xml代码
![](http://boendev.iteye.com/images/icon_copy.gif)
![](http://boendev.iteye.com/images/icon_star.png)
mvn eclipse:myeclipse
在eclipse中原来的workspace不要动,右键 import 选择 exiting project,导入,即可
在eclipse中右键删除项目,必须勾选 delete project contents on disks( )
6、一些常用的命令
Xml代码
![](http://boendev.iteye.com/images/icon_copy.gif)
![](http://boendev.iteye.com/images/icon_star.png)
mvn archetype:generate -DgroupId=com.aboy.webmap -DartifactId=webmap -DarchetypeArtifactId=maven-archetype-webapp
mvn clean:删除target目录下所有生成的war,jar
mvn install:生成war,jar包
mvn eclipse:eclipse:增加eclipse属性(.project, .classpath文件)
mvn eclipse:myeclipse:增加eclipse属性(增加web属性)mvn eclipse:clean:去掉eclipse属性
mvn eclipse:eclipse -DdownloadJavaDocs=true:在下载依赖包时,也下载其JavaDocs文件
mvn test:运行应用程序中的单元测试
mvn package:依据项目生成jar文件
mvn install:将项目的jar文件添加到本地的Maven库中
mvn site:生成项目相关信息的网站
mvn clean:清除目标目录中的生成结果
mvn eclipse:eclipse:生成Eclipse项目文件
使maven2在下载依赖包的同时下载其源代码包的方法:
1. 使用maven命令:mvn dependency:sources 下载依赖包的源代码。
2. 使用参数: -DdownloadSources=true 下载源代码jar。 -DdownloadJavadocs=true 下载javadoc包。
参看maven官方网站
http://maven.apache.org/guides/getting-started/index.html
这个地方有archetypeAritfactId的不用参数代表的不同project类型的解释
http://maven.apache.org/archetype/maven-archetype-bundles/
Archetype ArtifactIds Description
maven-archetype-archetype | An archetype which contains a sample archetype. |
maven-archetype-j2ee-simple | An archetype which contains a simplifed sample J2EE application. |
maven-archetype-mojo (deprecated) | Deprecated in favour of maven-archetype-plugin, which has a better name. |
maven-archetype-plugin | An archetype which contains a sample Maven plugin. |
maven-archetype-plugin-site | An archetype which contains a sample Maven plugin site. |
maven-archetype-portlet | An archetype which contains a sample JSR-268 Portlet. |
maven-archetype-quickstart | An archetype which contains a sample Maven project. |
maven-archetype-simple | An archetype which contains a simple Maven project. |
maven-archetype-site | An archetype which contains a sample Maven site which demonstrates some of the supported document types like APT, XDoc, and FML and demonstrates how to i18n your site. |
maven-archetype-site-simple | An archetype which contains a sample Maven site. |
maven-archetype-webapp | An archetype which contains a sample Maven Webapp project. |
Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2.3:create
可将create 改成 generate,然后最后面再加个 -Dversion=1.0,重新构建
[/b]
相关文章推荐
- 【转载】Stack Overflow: The Architecture - 2016 Edition
- P103 单源最短路问题 第三种Dijkstra算法
- bzoj 1083: [SCOI2005]繁忙的都市
- 常用的linux命令
- MySQL主从同步实验
- HDU1010(回溯剪枝)
- Shell字符操作命令——grep、sed、awk
- 【转】matlab函数_连通区域
- 笔记
- 写在首页
- 夺命雷公狗---微信开发32----公众平台营销咨询系统1
- 【HDOJ】4043 FXTZ II
- NetBeans下Tomcat无法查看web应用运行,报错:部署错误
- Android软件开发随笔笔记第一讲
- 【杭电】[2048]神、上帝以及老天爷
- BASIC-15 字符串对比 字符串 大小写 VIP试题
- Python 第五天 装饰器
- Virtual Box上安装CentOS7
- bzoj 1079: [SCOI2008]着色方案
- POJ 3176 Cow Bowling