以前虽然使用过Maven1.0,当发现现在的Maven2.0的变化和1.0比起来变化很大,配置上倒还一样,但是使用上有很大不同,如果你还用1.0的命令,会发现许多不能使用。闲话少叙,进入正题。
首先当然去Apache网站下载Maven2了。下载地址:http://maven.apache.org/download.html 。我下载的版本是maven-2.0.4-bin.zip
然后我把maven-2.0.4-bin.zip解压到D:\maven-2.0.4
下面就是配置环境变量了,这和1.0的版本是一样的。(1)MAVEN_HOME:D:\maven-2.0.4 (2)在Path 中加入%MAVEN_HOME%\bin
这样配置就OK了。然后,我建立了如下目录:E:\app\mavenApp,当然这些可以随便建立,呵呵。
测试是否安装成功 方法
在命令行输入 Mvn -version
显示
Maven version: 2.0.4
则安装成功。
Eclipse插件mavenide的安装
eclipse工程里安装update plugin更新方便如下:
Eclipse插件mavenide
同时在eclipse中我们可以下载一个maven的插件,用来辅助eclipse进行maven工程的开发工作。这个插件名称叫做mavenide。
这个插件可使用以下更新站点:http://m2eclipse.codehaus.org/
并且非常方便的是,这里还提供了一个flash的演示来介绍如何安装此插件,这个flash演示的观看地址在:
http://m2eclipse.codehaus.org/Installing_Maven_2.0_plugin_for_Eclipse.html
注意在图中有写update 网址时一定按照下面的更新的网站.否则会报错的
http://m2eclipse.sonatype.org/update
这里就不做多写了
-----------------------------------------------
maven2的命令说明
在命令行下输入mvn -h , 显示mvn帮助,其中usage: mvn [options] [<goal(s)>] [<phase(s)>]表明了mvn命令的构成。
Options:可选的参数。比如前面提到的-version , -h等。
Goal(s): 表示maven构建的“目标”。比如前面的mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-app
其中archetype:create表示archetype插件下的create目标。这里,插件是为了某种目的构建的目标的集合,maven通过插件扩展其功能。 还可以为目标传递一些参数,比如上面的“-DgroupId=com.mycompany.app -DartifactId=my-app”。
Phase(s):阶段。表示maven构建生命周期 中的一个步骤。使用相位命令时,maven会执行生命周期中该阶段之前的所有命令,使项目处于指定的“状态”。
比如在刚才创建的项目路径下输入mvn compile,会创建target文件夹,并编译class,使项目处于“已编译”状态。
maven定义的生命周期中主要的相位如下:
validate: 验证项目是否正确以及相关信息是否可用。
compile: 编译。
test: 通过junit进行单元测试。
package: 根据事先指定的格式(比如jar),进行打包。
integration-test: 部署到运行环境中,准备进行集成测试。
verify: 对包进行有效性性和质量检查。
install: 安装到本地代码库。
deploy: 在集成或发布环境,将包发布到远程代码库。
在“默认”的生命周期之外,还有两个“阶段”:
clean: 清除以前的构建物。
site: 生成项目文档。
阶段实际上是通过目标的组合实现的。
组合命令 -----------------------------------------------------------------------
可以通过对目标及相位的组合使得一个命令完成多个功能,比如:
mvn clean dependency:copy-dependencies package
相当于按顺序执行
mvn clean
mvn dependency:copy-dependencies
mvn package
-------------------------------------------------------------------
命令的说明如下:
创建Maven的普通java项目:mvn archetype:create -DgroupId=com.codeline.commons -DartifactId=pjoName
创建Maven的Web项目:mvn archetype:create -DgroupId=com.mycompany.app
-DartifactId=my-webapp
-DarchetypeArtifactId=maven-archetype-webapp
编译源代码:mvn compile (或者:mvn compiler:compile)
编译测试代码:mvn test-compile
运行测试:mvn test
产生site:mvn site
打包:mvn package
在本地Repository中安装jar:mvn install
清除产生的项目:mvn clean
生成eclipse项目:mvn eclipse:eclipse
生成idea项目:mvn idea:idea
组合使用goal命令,如只打包不测试:mvn -Dtest package
编译测试的内容:mvn test-compile
只打jar包: mvn jar:jar
只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile (这里要特别注意 -skipping 的灵活运用,当然也可以用于其他组合命令)
清除eclipse的一些系统设置:mvn eclipse:clean
maven2本地的数据仓库目录
打开D:\maven-2.0.4\conf\settings.xml
1. 改变<localRepository>E:/app/m2/repository</localRepository> 目的:改变本地的数据仓库目录(存放从远程下载的jar包),如果不改变也可以,如不改变,缺省目录为:C:\Documents and Settings\主机名\.m2\repository
2. 配置代理,主要目的是为了能从远程下载jar包,根据实际的网路情况进行配置吧。因为我现在单位是有代理服务器的,如果不配置,就不能从远程下载jar包了。我的配置如下(注意:如果你的网络没有代理服务器,就不用配置这个步骤)
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<host>192.168.17.100</host>
<port>8889</port>
<nonProxyHosts>192.168.*.*</nonProxyHosts>
</proxy>
配置存储库
要求项目的每个开发者必须在conf目录中配置存储库是不方便的,所以Maven可以同时查看多个存储库并且将它们全部配置在settings.xml文件中。让我们看看一个例子,它展示了如何在应用程序用使用多个存储库。在以下从settings.xml文件摘录的片断中,我们设置了两个存储库来让Maven寻找依赖项。Ibiblio一直是默认的存储库,我们又添加了Planet Mirror作为后援存储库。我们也可以让团队使用的本地web服务器作为第二个存储库。
<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>
---------------------------------
接下来我们体验一下maven2 ,
第一步:
在命令行中,进入你常用的项目文件夹,输入
mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-app
让我们看一下mvn对项目目录的组织
My-app
├─pom.xml
└─src
├─main
│ └─java
│ └─com
│ └─mycompany
│ └─app
│ └─App.java
└─test
└─java
└─com
└─mycompany
└─app
└─AppTest.java
可以看出,代码和测试代码分别放在main及test文件夹下。 Pom.xml描述项目对象模型(Project Object Model)。其模式文件为http://maven.apache.org/xsd/maven-4.0.0.xsd 详细的POM说明请参考相关资料。
-----
第二步: 生成eclipse项目
当建立一个工程后,执行 mvn eclipse:eclipse ,建立一个eclipse的工程,
发现报如下错误:Unbound classpath variable: 'M2_REPO/junit/junit/3.8.1/junit-3.8.1.jar' in project my-webapp ,这是因为在Eclipse 没有配置 M2_REPO 变量,
配置步骤:window >> preferences >> Java >> Build Path >> Classpath Variables
新建一个 M2_REPO 的变量,变量值指向你系统的Maven2的数据仓库位置。
建立成功后可通过Eclipse导入的功能将工程导入到Eclipse中,
第三步 编写代码
package com.mycompany.app;
/**
* Hello world!
*
*/
public class App {
public static void main(String[] args) {
System.out.println("Hello World!");
}
/**
* 提供一个调用函数
* @param ls_v
*/
public void showTest(String ls_v) {
System.out.println("out text===" + ls_v);
}
}
第四步 :编译代码
编译过程在工程文件夹下面输入如下命令
mvn clean
mvn compile
mvn package
或者 mvn clean compile package
第五步: 安装Jar(或war)依赖到本地的数据仓库中
进入 工程文件夹下面的\target目录下,发现有个my-app-1.0-SNAPSHOT.jar包
然后执行 mvn install:install-file -Dfile=my-app-1.0-SNAPSHOT.jar -DgroupId=myapp.mocha -DartifactId=myapptest -Dversion=1.0 -Dpackaging=jar
这样就把dwr传到了本地仓库中(我的本地仓库地址为:E:\app\m2\repository\),
上传到仓库中的jar包名为dwrDart-1.0.jar,目录结构为myapp/mocha/myapptest/1.0/myapptest-1.0.jar
第五步 在eclipse 中创建一个maven2的项目
修改 项目中的 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>
<dependency>
<groupId>myapp.mocha</groupId>
<artifactId>myapptest</artifactId>
<version>1.0</version>
<scope>test1</scope>
</dependency>
</dependencies>
</project>
其中红字部分为加载 jar包过程,刷新项目 ,你会发现,项目中加载了之前所打好的jar包,于是你就可以进行引用了。
============================================、
分享到:
相关推荐
- `MAVEN_HOME`:指向Maven的安装目录。 - `PATH`:添加 `%MAVEN_HOME%\bin` 到系统路径中,使得可以在命令行中直接使用Maven命令。 - **设置settings.xml**:这是Maven的重要配置文件,位于 `$MAVEN_HOME\conf\...
2. Maven:下载 Apache Maven 3.0.4 压缩包,解压后配置环境变量,新建 `M2_HOME` 用户变量,指向 Maven 的安装路径,接着在系统变量的 `Path` 中添加 `%M2_HOME%\bin`。安装完成后,通过命令行输入 `mvn -version` ...
### Maven安装和使用详解 #### 一、Maven概述 Maven是一款强大的开源项目管理和构建工具,由Apache软件基金会维护。Maven适用于基于Java平台的项目管理,支持从小型开源库到大型企业级应用程序的构建需求。无论是...
### Maven安装与配置详解 #### 一、Maven简介 Maven是一款由Apache软件基金会支持的项目管理和理解工具。它可以帮助开发者自动构建Java项目,并管理项目的依赖关系。Maven使用XML格式来描述项目的构建规则,这使得...
通过上述步骤,您可以顺利地在本地环境中安装和配置 Maven 3.6.3,并将其集成到 IntelliJ IDEA 2022.2.3 中。这为自动化构建和管理 Java 项目的依赖提供了强大的支持。Maven 通过统一的生命周期模型、插件机制以及对...
### JDK和Maven安装配置详解 #### 一、JDK安装与配置 ##### 1. JDK 安装步骤 JDK (Java Development Kit) 的安装通常较为简单直观,大多数情况下,只需要按照安装向导提示进行即可。对于 JDK 1.5(即 Java 5)的...
2. **修改settings.xml文件**: 在Maven安装目录下的`conf`文件夹中找到`settings.xml`文件,取消对`<localRepository>`标签的注释,并修改路径为所选的本地仓库路径,例如: ```xml <localRepository>D:/Util/...
2. **Maven 仓库** - **本地仓库**: 存储从远程仓库下载的插件和jar包,项目首先从本地仓库查找所需依赖。 - **远程仓库**: 如果本地仓库没有所需依赖,Maven 将尝试从远程仓库下载。 - **中央仓库**: Maven 中央...
** Maven2 概述 ** ...总结,Maven2 是Java开发中的重要工具,它的依赖管理、标准化构建流程和插件系统极大地提升了项目的开发效率。了解并熟练使用Maven2,能够帮助开发者更高效地进行项目管理与协作。
### Maven Windows 安装知识点...**总结**:通过以上步骤,我们不仅完成了Maven在Windows环境下的安装,还深入了解了Maven的基本命令和一些进阶配置方法。这对于使用Java进行软件开发的工程师来说是非常实用的知识点。
截至2011年10月13日,可用地址为:[Eclipse Maven插件安装地址](http://download.eclipse.org/technology/m2e/releases)。 2. **在线安装插件**:通过Eclipse内置的插件安装功能,选择上述URL进行插件安装。安装...
### 如何在MyEclipse上安装与配置Maven3 #### 环境准备 在开始配置Maven之前,确保已经正确安装并配置了以下环境: - **JDK1.6**:Maven依赖于Java运行环境,因此需要先安装JDK。 - **Maven3.0.4**:这是本教程使用...
在Eclipse中,我们需要安装M2E(Maven Integration for Eclipse)插件,它可以帮助我们直接在IDE中管理和构建Maven项目。通过离线包,我们可以避免在线安装插件时可能出现的网络问题。 配置Eclipse与Maven的步骤...
总结,离线安装Eclipse的Maven插件是一种在无网络或网络不稳定情况下的有效解决方案。通过配置Windows的Maven环境和在Eclipse中进行离线安装,我们可以确保开发过程中对Maven的正常使用,实现项目的高效管理和构建。
2. **指定Maven安装路径** - 在弹出的设置页面中,可以看到有一个 “User Settings file” 选项,点击右侧的文件夹图标选择 Maven 的安装路径下的 `conf/settings.xml` 文件。 3. **配置Maven本地仓库** - 在同...
总结一下,本篇文章主要介绍了在CentOS系统上安装和配置Maven的步骤,包括安装JDK、下载Maven、设置环境变量以及验证安装。通过这些步骤,开发人员能够在Linux环境中享受到Maven带来的便利,有效地管理和构建Java...