`
erichua
  • 浏览: 516764 次
  • 性别: Icon_minigender_2
  • 来自: 远方
社区版块
存档分类
最新评论

maven2命令简介

    博客分类:
  • JAVA
阅读更多
Maven2主要配置文件:pom.xml和settings.xml。
POM是Maven的核心对象模型,对于项目,一般只需要pom.xml就行了。
settings.xml配置在Maven2中存在两种级别:

用户级,针对操作系统登录用户而言。一般在$home/.m2/,对于windows用户,就是目录:C:\Documents and Settings\用户名\.m2\settings.xml。
全局级:一般在%M2_HOME%/conf/settings.xml,M2_HOME是Maven2的根目录环境变量名。


Maven2提供预定义的目录模板
如图:



具体应用如下:
1.下载maven2
http://maven.apache.org/download.html

2.设置二环境变量:解压,如解压在D:\mvntest,然后设置系统环境变量M2_HOME=D:\apache-maven-2.0.8 ,path变量里添加D:\apache-maven-2.0.8\bin,方便Maven在任何目录下运行。

3.mvn -h可以查看帮助
如执行mvn --version可以查看版本信息

mvn --version


可以显示类似这样的信息:

Maven version: 2.0.8
Java version: 1.6.0
OS name: "windows xp" version: "5.1" arch: "x86" Family: "windows"



4.创建一个新项目:
Maven2的运行命令是mvn,常用命令为:

创建Maven项目:mvn archetype:create
编译源代码:mvn compile
编译测试代码:mvn test-compile
运行测试:mvn test
产生site:mvn site
打包:mvn package
在本地Repository中安装jar:mvn install
清除产生的项目:mvn clean


如:创建一个新项目:

mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-app


说明:artifactId是项目名称,groupId则是项目的包结构。
如果是第一次运行,则需要花费一段时间,这是因为maven会下载最新的plugin jars和一些其它所需要的文件到你本地的repository.
当完成以后,

cd my-app


可以看到标准的maven结构:

my-app
|-- pom.xml
`-- src
    |-- main
    |   `-- java
    |       `-- com
    |           `-- mycompany
    |               `-- app
    |                   `-- App.java
    `-- test
        `-- java
            `-- com
                `-- mycompany
                    `-- app
                        `-- AppTest.java


src/main/java 目录包含项目的code资源,  src/test/java 目录包含测试code, pom.xml 是项目的 Project Object Model( POM )

Maven2还会创建缺省的pom.xml。在Maven2里,pom.xml文件是一个项目的核心配置.


该项目生成的默认的pom.xml文件内容为:

<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.mycompany.app</groupId>
  <artifactId>my-app</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>my-app</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>



如果想把整个项目打包,则只需要执行命令:

mvn package



打包的jar文件的名称是根据pom.xml里<artifactId>的值和 <version>的值连接起来组成的。中间用-连接,如本项目的jar包及位置为D:\mvntest\my-app\target \my-app-1.0-SNAPSHOT.jar

也可以测试一下该jar包,执行命令:

java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App


如果输出:

Hello World!


则表示正确。

Maven2也考虑到:不同类型的项目需要拥有不同的目录结构。如创建web项目,可以使用命令:

mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp



在Maven2中有了明确的生命周期概念,而且都提供与之对应的命令,使得项目构建更加清晰明了。主要的生命周期阶段:

validate,验证工程是否正确,所有需要的资源是否可用。
compile,编译项目的源代码。
test-compile,编译项目测试代码。
test,使用已编译的测试代码,测试已编译的源代码。
package,已发布的格式,如jar,将已编译的源代码打包。
integration-test,在集成测试可以运行的环境中处理和发布包。
verify,运行任何检查,验证包是否有效且达到质量标准。
install,把包安装在本地的repository中,可以被其他工程作为依赖来使用
deploy,在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
generate-sources,产生应用需要的任何额外的源代码,如xdoclet。
如果要执行项目编译,那么直接输入:mvn compile即可,对于其他的阶段可以类推。阶段之间是存在依赖关系(dependency)的,如test依赖test-compile。在执行 mvn test时,会先运行mvn test-compile,然后才是mvn test

因为maven2 是有生命周期这一概念的,所以如果你执行package,相应的以前步骤,如compile,test等都会自动执行。
刚开始执行会比较慢,需要从maven2远程库中下载所有的文件到本地。如果你的本地没有相应的依赖包,则每次maven都会去远程下载,所以配置一个镜像库就比较重要了。
分享到:
评论

相关推荐

    Maven核心命令解析和Maven课程资源库大全

    Maven核心命令解析和Maven课程资源库大全Maven核心命令解析和Maven课程资源库大全Maven核心命令解析和Maven课程资源库大全Maven核心命令解析和Maven课程资源库大全Maven核心命令解析和Maven课程资源库大全Maven核心...

    maven常用命令

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

    Maven常用命令 Maven Maven学习

    Maven常用命令 Maven Maven学习

    maven仓库清理命令

    maven仓库清理命令

    maven 常用命令集合

    2. 编译命令 命令:mvn compile 作用:编译源代码 3. 测试命令 命令:mvn test-compile 作用:编译测试代码 命令:mvn test 作用:运行应用程序中的单元测试 4. 打包命令 命令:mvn package 作用:依据...

    maven常用的命令

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

    maven配置命令及项目部署

    maven配置命令及项目部署 maven是一个基于项目对象模型(POM)的项目管理和综合工具,主要用于Java项目的构建、测试、打包、部署等。maven的配置文件是pom.xml,包含了项目的基本信息、依赖关系、插件配置等信息。...

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

    **正文** Maven是Java开发中的一...通过熟练掌握Maven命令和配置,开发者可以高效地管理项目依赖,实现自动化构建,从而提高开发效率。而提供的测试项目则可以帮助我们更好地理解Maven如何与测试集成,确保代码质量。

    maven命令行相关命令集锦

    ### Maven命令行相关命令集锦 #### 概述 Maven是Java项目自动化构建工具的一种标准,它通过一系列规范化的约定来简化项目的构建过程。在实际的开发工作中,Maven常用于构建Web工程项目,帮助开发者高效地管理项目...

    maven基本命令详解

    ### Maven基本命令详解 Maven 是一款非常强大的 Java 项目构建工具,它通过一系列的预定义生命周期和插件,简化了项目的构建、依赖管理和部署等工作。本文将对 Maven 的一些常用基本命令进行详细介绍。 #### 1. ...

    maven实用命令

    通过熟练掌握这些Maven命令,你可以更加高效地管理你的Java项目,无论是构建、测试还是部署,都能得心应手。同时,Maven的插件系统使得你可以根据需求扩展其功能,满足各种复杂的构建需求。在实际开发过程中,不断...

    java Maven中常用命令和插件

    java Maven中常用命令和插件java Maven中常用命令和插件java Maven中常用命令和插件java Maven中常用命令和插件java Maven中常用命令和插件java Maven中常用命令和插件java Maven中常用命令和插件java Maven中常用...

    maven常用命令.docx

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

    eclipse下几个简单maven命令

    本篇文章将详细讲解在Eclipse环境下如何使用几个基本的Maven命令,这些命令对于日常开发和部署工作至关重要。 1. **clean**: Maven的`clean`目标是用来清理项目生成的输出物,如编译后的class文件、测试结果、打包...

    java开发maven命令详解

    ### Maven命令详解 Maven是Java项目自动化构建工具的一个标准,它通过一组生命周期构建项目对象模型(POM),简化了构建过程。对于初学者来说,理解Maven的基本命令及其用法至关重要。 #### 1. `mvn -v` 用于显示...

    maven2的包

    2. **构建工具**:Maven2 提供了一套标准化的生命周期和构建阶段,如编译、测试、打包、部署等,只需简单命令即可完成整个构建过程。 3. **插件系统**:Maven2 的强大之处在于其插件机制,开发者可以通过编写或使用...

    Maven exec-maven-plugin:执行外部命令的实践指南

    exec-maven-plugin是Maven生态系统中的一个插件,它允许用户在Maven构建过程中执行外部命令或脚本。这使得Maven项目可以集成更多的自定义操作,比如运行特定的脚本、调用系统命令等。本文将详细介绍exec-maven-...

Global site tag (gtag.js) - Google Analytics