`
boendev
  • 浏览: 242857 次
  • 性别: Icon_minigender_1
  • 来自: 上海
文章分类
社区版块
存档分类
最新评论

Maven常用命令

 
阅读更多

生成一个Web工程,这个工程不是一个Eclipse标准的动态Web工程。

Xml代码 复制代码 收藏代码
  1. mvn archetype:create -DgroupId=com.aboy.webmap -DartifactId=webmap -DarchetypeArtifactId=maven-archetype-webapp  
mvn archetype:create -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文件

在</porject>前增中以下内容

Xml代码 复制代码 收藏代码
  1. <build>  
  2.     <finalName>ROOT</finalName>  
  3.     <outputDirectory>WebRoot/WEB-INF/classes</outputDirectory>  
  4.     <defaultGoal>install</defaultGoal>     
  5.     <plugins>  
  6.         <plugin>  
  7.             <artifactId>maven-compiler-plugin</artifactId>  
  8.             <version>2.0.2</version>  
  9.             <configuration>  
  10.                 <source>1.5</source>  
  11.                 <target>1.5</target>  
  12.                 <encoding>GBK</encoding>  
  13.              </configuration>  
  14.         </plugin>  
  15.         <plugin>  
  16.             <artifactId>maven-resources-plugin</artifactId>  
  17.             <configuration>  
  18.                 <encoding>GBK</encoding>  
  19.             </configuration>  
  20.         </plugin>  
  21.         <plugin>  
  22.             <artifactId>maven-war-plugin</artifactId>  
  23.             <configuration>  
  24.                 <webappDirectory>WebRoot</webappDirectory>  
  25.                 <warSourceDirectory>WebRoot</warSourceDirectory>  
  26.             </configuration>  
  27.         </plugin>  
  28.     </plugins>  
  29.   </build>  
<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>

build里的内容也是可以自行修改的,以下几个特别说明下:

<finalName>ROOT</finalName>:发布前执行时,生成ROOT.war文件。

<outputDirectory>WebRoot/WEB-INF/classes</outputDirectory>:编译后的.class文件和源目录下的文件存放的地方,这个是最关键的。

其它的内容就没有什么可说明的了,看看就知道了,整个文件如下如示:

Xml代码 复制代码 收藏代码
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  2.   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  
  3.   <modelVersion>4.0.0</modelVersion>  
  4.   <groupId>com.aboy.webmap</groupId>  
  5.   <artifactId>webmap</artifactId>  
  6.   <packaging>war</packaging>  
  7.   <version>1.0-SNAPSHOT</version>  
  8.   <name>webmap Maven Webapp</name>  
  9.   <url>http://obullxl.iteye.com</url>  
  10.      
  11.   <dependencies>  
  12.     <!-- logging -->  
  13.     <dependency>  
  14.         <groupId>log4j</groupId>  
  15.         <artifactId>log4j</artifactId>  
  16.         <version>1.2.13</version>  
  17.     </dependency>  
  18.        
  19.     <!-- test -->  
  20.     <dependency>  
  21.       <groupId>junit</groupId>  
  22.       <artifactId>junit</artifactId>  
  23.       <version>3.8.1</version>  
  24.       <scope>test</scope>  
  25.     </dependency>  
  26.   </dependencies>  
  27.      
  28.   <build>  
  29.     <finalName>ROOT</finalName>  
  30.     <outputDirectory>WebRoot/WEB-INF/classes</outputDirectory>  
  31.     <defaultGoal>install</defaultGoal>  
  32.     <plugins>  
  33.         <plugin>  
  34.             <artifactId>maven-compiler-plugin</artifactId>  
  35.             <version>2.0.2</version>  
  36.             <configuration>  
  37.                 <source>1.5</source>  
  38.                 <target>1.5</target>  
  39.                 <encoding>GBK</encoding>  
  40.              </configuration>  
  41.         </plugin>  
  42.         <plugin>  
  43.             <artifactId>maven-resources-plugin</artifactId>  
  44.             <configuration>  
  45.                 <encoding>GBK</encoding>  
  46.             </configuration>  
  47.         </plugin>  
  48.         <plugin>  
  49.             <artifactId>maven-war-plugin</artifactId>  
  50.             <configuration>  
  51.                 <webappDirectory>WebRoot</webappDirectory>  
  52.                 <warSourceDirectory>WebRoot</warSourceDirectory>  
  53.             </configuration>  
  54.         </plugin>  
  55.     </plugins>  
  56.   </build>  
  57. </project>  
<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代码 复制代码 收藏代码
  1. mvn eclipse:myeclipse  
mvn eclipse:myeclipse

 

6、一些常用的命令

Xml代码 复制代码 收藏代码
  1. mvn archetype:create -DgroupId=com.aboy.webmap -DartifactId=webmap -DarchetypeArtifactId=maven-archetype-webapp   
  2.   
  3. mvn clean:删除target目录下所有生成的war,jar   
  4. mvn install:生成war,jar包   
  5.   
  6. mvn eclipse:eclipse:增加eclipse属性(.project, .classpath文件)   
  7. mvn eclipse:myeclipse:增加eclipse属性(增加web属性)mvn eclipse:clean:去掉eclipse属性   
  8.   
  9. mvn eclipse:eclipse -DdownloadJavaDocs=true:在下载依赖包时,也下载其JavaDocs文件   
  10.   
  11. mvn test:运行应用程序中的单元测试   
  12. mvn package:依据项目生成jar文件   
  13. mvn install:将项目的jar文件添加到本地的Maven库中   
  14. mvn site:生成项目相关信息的网站   
  15. mvn clean:清除目标目录中的生成结果   
  16. 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,重新构建

 

分享到:
评论

相关推荐

    maven常用命令

    Maven 常用命令大全 Maven 是一个项目管理和构建自动化工具,提供了许多实用的命令来简化项目的开发和维护过程。在这篇文章中,我们将总结和讲解 Maven 中的一些常用命令,它们将帮助您更好地使用 Maven。 创建 ...

    maven常用命令.docx

    以下是对标题和描述中提及的Maven常用命令的详细解释: 1. `mvn clean`:这个命令用于清理项目,删除`target`目录下的所有生成物,包括编译后的类文件、测试结果等。 2. `mvn compile`:编译项目的源代码,将`src/...

    Maven常用命令 Maven Maven学习

    Maven常用命令 Maven Maven学习

    maven 常用命令集合

    maven 常用命令集合 Maven 是一个基于项目对象模型(Project Object Model,POM)的项目管理工具,主要用于 Java 项目的构建、测试和部署。Maven 的强大之处在于其提供了一种标准化的方式来构建、测试和部署项目,...

    maven常用命令以及以个测试项目

    ### Maven常用命令 1. **初始化项目结构**: - `mvn archetype:generate` 是用于创建一个新的Maven项目的基础框架。你可以根据提示选择对应的archetype,如maven-archetype-quickstart,来快速生成一个简单的...

    maven 常用命令

    一、Maven常用命令 1. 初始化项目结构: `mvn archetype:generate` - 这个命令用于创建一个新的Maven项目,根据提示选择相应的 archetype(项目模板)来生成基础项目结构。 2. 编译源代码: `mvn compile` - ...

    maven常用命令.txt

    ### Maven常用命令详解 #### 1. `mvn -v` - **命令**: `mvn -v`(注意:实际命令应为 `mvn --version` 或 `mvn -version`) - **功能**: 显示Maven当前版本信息。 - **应用场景**: 当需要确认当前使用的Maven版本时...

    maven常用的命令

    Maven 常用命令 Maven 是一个基于项目对象模型(Project Object Model,POM)的项目管理工具,主要用于管理和构建 Java 项目。以下是 Maven 中的一些常用命令: 1. 创建项目 Maven 提供了 archetype 机制来快速...

    Maven常用命令大全与pom文件讲解

    摘要:本文主要讲解是Maven使用过程中一些常用的命令,并配上图片说明,最后还讲了pom.xml文件的一些构造。-D传入属性参数-P使用pom中指定的配置-e显示maven运行出错的信息-o离线执行命令,即不去远程仓库更新包-X...

    Maven 常用命令都准备好给你了.docx

    以下是一些Maven的常用命令及其详细解释: 1. **创建Maven项目**: - `mvn archetype:create -DgroupId=packageName -DartifactId=projectName`:创建一个基本的Java项目。 - `mvn archetype:create -DgroupId=...

    java开发maven命令详解

    ### Maven命令详解 Maven是Java项目自动化构建工具的一个标准,它通过一组生命周期构建项目对象模型(POM),简化了构建...以上就是关于Maven常用命令的详细介绍。通过掌握这些命令,可以更高效地管理和构建Java项目。

    Mvn常用命令总结

    ### Maven常用命令总结 Maven是一款非常流行的Java项目构建工具,它通过一组生命周期构建规则来管理项目的构建过程,包括编译、测试、打包、部署等。掌握Maven的基本使用方法对于进行Java项目的开发和维护至关重要...

    maven配置命令及项目部署

    以下是一些常用的maven配置命令: * mvn -v:查看maven版本 * mvn compile:进行编译 * mvn test:运行测试类 * mvn package:生成jar包 * mvn clean:删除target目录 * mvn install:将jar包安装到本地仓库 * mvn ...

    适用于windows-x64位的maven压缩包

    使用于windows-x64为的压缩包 将此文件解压,并保存到你...maven常用命令 mvn compile编译当前项目 mvn clean清理当前目录 mvn test测试src/test文件夹下的代码 mvn package 打包此项目 mvn install 安装此项目的依赖包

    maven命令行相关命令集锦

    本文将对Maven构建Web工程相关的常用命令进行总结。 #### Maven项目初始化 - **初始化Java应用** - 命令格式:`mvn archetype:generate -DgroupId=...

Global site tag (gtag.js) - Google Analytics