使用MAVEN进行工程自动化构建(2)

3 简单的java应用程序和java web程序的例子
首先输入命令
mvn archetype:create -DgroupId=cn.com.capinfo -DartifactId=my-app
生成的项目布局如下:
my-app
----src
     ----main
         ----java
----cn
        ----com
         ----capinfo
     ----test
         ----java
----cn
      
----com
           ----capinfo
还会在my-app目录下创建了一个pom.xml文件(需要注意一点:执行命令必须在pom.xml文件同级的目录下进行)
下面对pom.xml的各各结点进行一下说明:
poject 这是pom.xml的顶级元素。
modelVersion 这是元素指出了这个POM使用的是那个版本的对象模型。这个模型的版本自身么是经常改变的,但这种改变是为了使模型更加的稳定。
groupId这个元素指出创建这个工程的组织或团队的唯一标识,并且这个也是一个项目的关键标识,推荐使用这个组织或团队的完整域名。
artifactId 这个元素指出这个工程的基本名称。
packaging 打包的类型(例如:JAR,WAR,EAR等等)默认为jar
version项目的版本号(打包时会将它加入)
name 这个元素指出这个工程显示的名称。
url指出在哪里能发现工程的站点。
desription 这个元素提供了这个工程基本的描述。这个也常用于Maven产生的文档中。
dependencies 定义依赖(项目中需要依赖的包)
以上是maven的一些基本项,完整的请参考http://maven.apache.org/maven-model/maven.html
还需要注意在定义依赖的时候存在着几种对依赖的管理如下:
  • compile,缺省值,适用于所有阶段,会随着项目一起发布。
  • runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。
  • test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。
  • system,需要显式提供包含依赖的jarMaven不会在Repository中查找它。
maven下载这些包是通过在http://www.ibiblio.org/maven2/网站上下载的
mvn archetype:create -DgroupId=cn.com.capinfo -DartifactId=demo
     -DarchetypeArtifactId=maven-archetype-webapp
生成的结果结构如下所示:
demo
----src
     ----main
         ----resources
         ----webapp
             ----WEB-INF
与java应用程序相比pom.xml需要修改的地方是
<packaging>war</packaging>
如果想改变生成后war文件的名字可以加入以下代码
<build>
     <finalName>capinfo demo</finalName>
</build>
填加依赖的时候是比较麻烦的,因为groupIdartifactIdversion是必填项,有时候不知道用哪个版本,有一个小的窍门:
首先进入google然后输入你要找的文件如:site:www.ibiblio.org maven2 struts 进入相应的页中打开maven-metadata.xml文件就可以得到所需要的信息了。
需要注意一点,如果想将.jar文件加载到WEB-INF/lib文件夹下需要将<scope>compile</scope>这样就可以将.jar文件填加进去了。
创建Maven项目:mvn archetype:create
编译源代码:mvn compile
编译测试代码:mvn test-compile
运行测试:mvn test
产生sitemvn site
打包:mvn package
在本地Repository中安装jarmvn install
清除产生的项目:mvn clean
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值