`
zpball
  • 浏览: 898451 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

maven 使用

阅读更多
maven环境快速搭建
http://jiaozhiguang-126-com.iteye.com/blog/1726991


Installation安装
Maven is a Java tool, so you must have Java installed in order to proceed.
Maven是Java工具,所以你必须安装Java才能运行。 就是配置Java环境变量

去官方网站下载之:http://maven.apache.org/download.html,

我的电脑----属性----高级----环境变量,点击“系统变量”下的新建,输入:变量名 MAVEN_HOME; 变量值d:\Maven204,在系统变量列表中找到系统变量path,打开之,在变量值中追加”;%MAVEN_HOME%\bin”,至此环境变量设置完毕。
        检查一下是否已经完成安装,打开dos窗口,输入mvn –v,如果出现以下信息则表示maven2已经安装成功:
X:〉mvn –v

Creating a Project创建项目
1、选择一个根目录,我的java工作目录是D:\eclipse\workspace
2、打开dos窗口采用cd命令进入D:\eclipse\workspace目录下
3、输入下列指令
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false


注意:刚开始运行总不成功,很郁闷,后来看官方给的答复才明白怎么回事。If you have just installed Maven, it may take a while on the first run. This is because Maven is downloading the most recent artifacts (plugin jars and other files) into your local repository. You may also need to execute the command a couple of times before it succeeds. This is because the remote server may time out before your downloads are complete. Don't worry, there are ways to fix that.
如果刚刚安装Maven,第一次运行可能要花点时间,因为Maven要下载最新的jar或者其他的文件什么的到你本地目录,成功之前你可能需要执行几次上面的命令,因为远程服务器可能超时,呵呵 ,万事开头难,所以要耐心。

但是在公司里面,我试了好多次,但是就是不成功,很是郁闷,后来回家之后一次就成功了,所以感觉可能是公司里面网络有限制,所以下载不完就失败了,其他同学也小心了,防不胜防啊!!

cd my-app

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

The POM(Project Object Model)项目对象模型
The pom.xml file is the core of a project's configuration in Maven. It is a single configuration file that contains the majority of information required to build a project in just the way you want. The POM is huge and can be daunting in its complexity, but it is not necessary to understand all of the intricacies just yet to use it effectively.
POM文件在Maven中是项目配置的核心,它是一个单独的配置文件用你想要的方式包含需要构建项目的主要信息,POM文件的复杂性让我们望而生畏,但是我们没必要理解所有东西,我们只是很方便的用它就好了

Build the Project

mvn package
执行这个命令也会下载很多不知道是干嘛的东西,以下面结束
...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2 seconds
[INFO] Finished at: Thu Jul 07 21:34:52 CEST 2011
[INFO] Final Memory: 3M/6M
[INFO] ------------------------------------------------------------------------

我们来测试下我们刚才生成的jar包
java -cp target/my-app-1.0-SNAPSHOT.jar com.mycompany.app.App
打印出
Hello World!

恭喜你,成功了,这世界,我来了,Maven World,I Come,哈哈

Maven Phases(Maven 步骤)

validate: mvn validate 验证工程是否正确,所有需要的资源是否可用。
compile: 编译 mvn compile
test: 测试 mvn test 编译并测试
package: mvn package 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件
integration-test: mvn integration-test 在集成测试可以运行的环境中处理和发布包。
verify: mvn verify 运行任何检查,验证包是否有效且达到质量标准。
deploy:

There are two other Maven lifecycles of note beyond the default list above. They are

clean: cleans up artifacts created by prior builds
site: generates site documentation for this project


mvn clean dependency:copy-dependencies package

This command will clean the project, copy dependencies, and package the project (executing all phases up to package, of course).
清除项目命令,复制依赖然后打包项目

Generating the Site 生成站点

mvn site

This phase generates a site based upon information on the project's pom. You can look at the documentation generated under target/site.
这个阶段会更具项目的POM生成一个站点,你可以看一下在target/site下面生成的文档。


Maven 生成Eclipse项目

四、生成eclipse工程文件
我采用的开发工具是eclipse,所以用maven的eclipse参数生成eclipse工程文件。输入如下
1、 采用dos的cd命令进入study目录
2、 输入指令:mvn eclipse:eclipse 如下所示:
D:/eclipse/workspace/study>mvn eclipse:eclipse
指令执行完毕后,发现多了两个文件:.classpath和.project

【生成项目】
JAVA项目 mvn archetype:create -DgroupId=net.welken -DartifactId=common
web 项目 mvn archetype:create -DgroupId=net.welken -DartifactId=web-app -DarchetypeArtifactId=maven-archetype-webapp

2、手工配置
        手工配置比起自动化来说是麻烦了些,不过任何东东掌握在自己手里总归是吃饱喝足谁也不服了不是J。而且配置一次就可以受益终身。更重要的是能解决自动化完 成不了的任务。比如我现在要配置oracle的jdbc驱动,采用自动化就提示我下载不了让我改变下载地址等等,真累。
        算了还是自己来吧。
        手工配置前还是先介绍一下相关背景知识。首先了解一下jar仓库的概念,maven采用集中化的方式管理架包,凡用maven构建的java工程都可以重 用统一管理下的架包,所以必须有一个统一存放jar文件的地方,这就是jar仓库,不论是开发还是部署都会建立一个本地仓库。这个仓库的位置默认是 X:/Documents and Settings/Administrator.LIPENG/.m2/repository(X是你操作系统所在盘符)下,你可以修改配置文件改变默认 的输出位置。该配置文件在maven目录下的conf子目录下。文件名叫settings.xml。在配置文件中加入如下节点信息即可D:/Repository。不过不建议改变,好像eclipse的maven插件只认默认的输出位置。我就是在这方面出了问题搞了半天才发现是输出路径的问题,也许是我还
没有玩转插件。谁要是解决此问题别忘了跟大家共享。
现在我们分析一下配置文件pom.xml的结构,以junit为例,格式如下:
xml 代码
< dependencies >  
< dependency >  
< groupId > junit </ groupId >  
< artifactId > junit </ artifactId >  
< version > 3.8.1 </ version >  
</ dependency >  
</ dependencies >  
在来看看本地仓库目录结构
Repository
`-- junit
|-- junit
| `-- 3.8.1
| `-- junit-3.8.1.jar
现在大家应该明白了吧,多余的话不说啦。照葫芦画瓢就是。不过注意先建目录后写配置文件,否则一旦保存,智能的插件就马上开始下载了…

现在开始手动建立oracle的jdbc目录并配置文件,首先建立目录结构如下:
Repository
`-- ojdbc
|-- ojdbc
| `-- 14
| `-- ojdbc-14.jar
如果你手头的jar文件名叫ojdbc14.jar,则改为ojdbc-14.jar,写配置文件:
xml 代码
< dependency >  
< groupId > ojdbc </ groupId >  
< artifactId > ojdbc </ artifactId >  
< version > 14 </ version >  
</ dependency >  
那么现在一个完整的pom.xml文件如下:
xml 代码
<? xml   version = "1.0" ?>
< project >  
< modelVersion > 4.0.0 </ modelVersion >  
< groupId > com.mycompany.app </ groupId >  
< artifactId > myapp </ artifactId >  
< name > Maven Quick Start Archetype </ name >  
< version > 1.0-SNAPSHOT </ version >  
< url > http://maven.apache.org </ url >  
< dependencies >  
< dependency >  
< groupId > ojdbc </ groupId >  
< artifactId > ojdbc </ artifactId >  
< version > 14 </ version >  
</ dependency >  
< dependency >  
< groupId > junit </ groupId >  
< artifactId > junit </ artifactId >  
< version > 3.8.1 </ version >  
</ dependency >  
</ dependencies >  
</ project >  

保存之,则发现工程管理透视图发生了一点变化,依此方法再加上jdbc的架包

看着log4j-2.13.jar被每个项目每个版本里一次又一次无限下载,你就会觉得用Maven2 管理Library实在很环保。
而且,Java的类库也急需摆脱这种无身份无地位一个jar包随处摆放的境况。Maven给Jar以名份是一个好方向。

Maven命令
mvn -version/-v 显示版本信息
mvn archetype:generate 创建mvn项目
mvn archetype:create -DgroupId=com.oreilly -DartifactId=my-app 创建mvn项目

mvn package 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件
mvn jetty:run 运行项目于jetty上,
mvn compile 编译
mvn test 编译并测试
mvn clean 清空生成的文件
mvn site 生成项目相关信息的网站
mvn -Dwtpversion=1.0 eclipse:eclipse 生成Wtp插件的Web项目
mvn -Dwtpversion=1.0 eclipse:clean 清除Eclipse项目的配置信息(Web项目)
mvn eclipse:eclipse 将项目转化为Eclipse项目

发布第三方Jar到本地库中:
mvn install:install-file -DgroupId=com -DartifactId=client -Dversion=0.1.0 -Dpackaging=jar -Dfile=d:/client-0.1.0.jar

mvn validate 验证工程是否正确,所有需要的资源是否可用。
mvn test-compile 编译项目测试代码。 。
mvn integration-test 在集成测试可以运行的环境中处理和发布包。
mvn verify 运行任何检查,验证包是否有效且达到质量标准。
mvn generate-sources 产生应用需要的任何额外的源代码,如xdoclet。
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics