今天初步接触学习了Maven,使用Maven构建了一个简单的java项目,现把该过程总结如下:
一、准备工作
1、首先确保本机已经具备Java程序开发的环境,也就是说安装了jdk,配置好了java虚拟机的运行环境。
2、接下来就是Maven的安装和配置了,先从Maven的官网上下载Maven的最新版本,下载地址:http://maven.apache.org/download.html,下载过来的文件形式为:apache-maven-3.0.4-bin.zip,把它解压,这里我解压成的文件路径为:F:\tool\apache-maven-3.0.4。
3、然后就是配置Maven的环境变量了,在环境变量的系统变量里新建系统一个变量M2_HOME,值为Maven的安装路径(这里我的路径为F:\tool\apache-maven-3.0.4);在系统变量Path的值的末尾追加;%M2_HOME%\bin
4、验证Maven是否安装成功,在cmd命令窗口中输入命令mvn –version,如果打印出类似信息:

表示已经安装成功,接下来就可以很方便的用maven来构建项目了
二、一个简单的HelloWorld的java项目构建过程:
1、在cmd命令行窗口中执行命令:
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false,由于是第一次安装使用Maven,这个命令一执行,它首先会从网络上下载一些插件jars包和文件到本地的仓库中,本地的仓库路径为:C:\Documents and Settings\lusai\.m2\repository,你会发现在执行这个命令之前,该文件夹是空的,执行完这个命令后,里面会多了很多文件夹,
这些文件夹都是从网上自动下载过来的
这些文件夹里都是些第三方的jar包,执行完这个命令后,你会很神奇的发现,一个简单的项目工程目录结构已经建好了,该工程目录结构就在我电脑上C:\Documents and Settings\lusai路径中的my-app文件夹中
该文件夹的目录结构为:my-app
|-- pom.xml
`-- src
|-- main
| `-- java
| `-- com
| `-- mycompany
| `-- app
| `-- App.java
`-- test
`-- java
`-- com
`-- mycompany
`-- app
`-- AppTest.java
其中的pom.xml文件就是该工程的核心配置,该文件中配置了项目的版本号、打包形式、所依赖的jar包等等一些信息:
<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>
2、Build打包构建项目,进入my-app文件目录中,执行命令mvn package,执行完如果打印类似信息:
则表明Build成功了!Build成功后,你会发现my-app文件夹中生成了一个target文件夹
其中的.jar文件就是我们自己开发的应用程序
3、接下来我们测试一下以上开发的应用程序能否正常运行,在cmd命令行窗口中进入目录:C:\Documents and Settings\lusai\my-app,然后执行命令java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App,如果窗口中能够打印出
则说明程序能正常运行!