ITPub博客

首页 > IT职业 > IT生活 > Maven 2 简明学习指南(2)

Maven 2 简明学习指南(2)

原创 IT生活 作者:HBearcat 时间:2006-04-18 17:00:57 0 删除 编辑
Maven 2 简明学习指南(2)[@more@]

项目文件:pom.xml

重要元素:

元素名

含义

project

maven 项目文件的最顶层的元素(根元素)。

modelVersion

POM所定义的项目或者项目组的版本号。此版本号一般不经常变动。

groupId

项目组的的唯一标识。在maven管理的项目中,一般是管理一群项目modelgroupid一般代表了这个项目群组。 例如org.apache.maven.plugins一般被设计为所有maven插件的groupid

artifactId

一个项目的唯一标识。此名字一般也在打包时,作为的包名字的前缀,一般的包名字为: -.,例如: myapp-1.0.jar

packaging

此元素用来定义项目在打包时的类型,例如jarwarear等等。默认值为jar

Name

此元素用来定义项目的名称,这个名称一般主要用在项目产生的document中。

url

此元素用来定义在什么网站上可以看到这个项目,这个名称一般主要用在项目产生的document中。

description

此元素用来对这个项目作简要的描述,这个名称一般主要用在项目产生的document中。

依赖的定义:

1. jar包的依赖:

dom4j

dom4j

1.6

jar

runtime

备注:这个jar一般在本地repository中。并有特殊的版本标记,会对应到指定的版本。

2. 项目之间的依赖:

com.bankcomm.crms

crms-biz-task

1.0-SNAPSHOT

依赖范围(Dependency Scope

常用的依赖范围有三种 compiletestruntime

Compile 此依赖指明在classpath中可以得到这个jar。把这个classpath既包括运行时的classpath也包括编译时的classpath。当未指定scope时,scope默认是compile

Test 此依赖指明该构件在项目正常的应用中不需要,只是用在项目测试用例的变成和执行过程中

Runtime scope值指明该构件在运行时的classpath中,不在编译时的classpath中。

distributionManagement

当开发人员想在作deploy动作时,deploy到远程repository中时。需要用distributionManagement标签指定远程repository

<!-- Enabling the use of FTP -->

ftp-repository

ftp://repository.mycompany.com/repository

org.apache.maven.wagon

wagon-ftp

1.0-alpha-3

说明:

之间用来指定在build时所要用到的插件。

用来定义需要deploy到远程repository。其中的ID要和setting.xml定义server相对应。因为在server中定义关于这个远程deploy环境的权限验证和安全方面的信息,例如 用户名和密码。

创建maven项目

1. 创建单一的maven项目:

例如:

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

执行成功后,将在当前目录产生项目文件:pom.xml, 内容如下:

xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">

4.0.0

com.mycompany.app

my-app

jar

1.0-SNAPSHOT

Maven Quick Start Archetype

http://maven.apache.org

junit

junit

3.8.1

test

生成的目录结构如下:

my-app

|-- pom.xml

`-- src

|-- main

| `-- java

| `-- com

| `-- mycompany

| `-- app

| `-- App.java

`-- test

`-- java

`-- com

`-- mycompany

`-- app

`-- AppTest.java

2. 创建包含多个modulesmaven项目。

举例说明:

我们要创建的目录结构如下:

+- pom.xml

+- my-app

| +- pom.xml

+- my-webapp

| +- pom.xml

所以我们首先在父层目录创建文件pom.xml.

4.0.0

com.mycompany.app

1.0-SNAPSHOT

app

pom

my-app

my-webapp

其他命令

命令

功能

mvn compile

编译

mvn test

执行所有的test用例

mvn test-compile

编译所有的test用例

mvn package

编译后打包

mvn install

将编译和打包好的文件发布到本地repository

mvn idea:idea

mvn eclipse:eclipse

创建项目文件,如果要创建eclipse项目文件。用mvn eclipse:eclipse

在命令行下操作很痛苦,要自己编写很多代码,很不方便,下面介绍基于EclipseMaven插件的使用,可以大大提高效率:

首先到http://maven.apache.org/eclipse-plugin.html 下载最新的插件,安装到Eclipse,具体安装过程很简单,这里就不说了,安装好后重起Eclipse,打开windows-->preferences在左边的菜单树里找到Maven配置本地储藏室路径,不改默认在C:Documents and Settingsusername%.m2 其他保持默认就可以了 应用后保存设置,如图:

新建工程MyProject,在工程上点鼠标右键在右键菜单选择 Maven 2 --> Enable弹出界面如图:

1.jpg

点完成,将会在工程的根目录产生一个pom.Xml的配置文件,然后我们开始添加我们需要使用到的jar包,还是在工程名上点鼠标右键,在右键菜单中选择Maven 2 --> Add Dependency 弹出界面如图:

2.jpg

如果相应的jar版本在本地储藏室没有找到,Maven将通过互联网下载相应版本的jar文件到本地储藏室并复制一份到lib目录下。

3.jpg

一些高级应用请查看http://maven.apache.org/guides/index.html 上的详细说明,介绍本书《Maven A Developers Notebook》是基于Maven 1 的,不过很多都可以借鉴过来,很好的书。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/618571/viewspace-828284/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 可怜虫
请登录后发表评论 登录
全部评论
  • 博文量
    12
  • 访问量
    728138