maven 初步 入门

最近使用发现了个问题,在下面的介绍使用maven建立web工程的时候有个选项: -Darchetype ArtifactId=maven-archetype-webapp,假如你把这其中的大写A不小心成了小写,则在pom.xml中,生成的将是jar包,而不再是war包了。 这两天看了看ant和maven,感觉受益不小,以前总以为自己会ant和maven呢,老认为不用很学习的ant和mvn也有这么大的学问阿,把我的心得写写: maven:   创建一个web-app工程:   mvn archetype:create -DgroupID=[类-包的名字] -DartifactID=[应用的名称] -DrarchetypeArtifactID=maven-archetype-webapp 请注意,上面的语句是不正确的,如果这样写了就会出下面的错误: BUILD ERROR  Error creating from archetype [INFO] ------------------------------------------------------------------------ [ERROR] BUILD ERROR [INFO] ------------------------------------------------------------------------ [INFO] Error creating from archetype Embedded error: Artifact ID must be specified when creating a new project from an archetype. [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ 这是新手很容易犯的错误!改正方法是把上面的“ID”改为“Id”,这样就可以正确的建立一个工程了! 给定两个简单模型: Application: mvn archetype:create -DgroupId=ce.demo.mvn -DartifactId=app |-- pom.xml `-- src     |-- main     |   `-- java     |       `-- ce     |           `-- demo     |               `-- mvn     |                   `-- App.java     `-- test         `-- java             `-- ce                 `-- demo                     `-- mvn                         `-- AppTest.java web-app: mvn archetype:create -DgroupId=ce.demo.mvn -DartifactId=webapp-DarchetypeArtifactId=maven-archetype-webapp |-- pom.xml `-- src     `-- main         `-- webapp             |-- index.jsp             |-- WEB-INF                 `-- web.xml
使用如下命令可以建立一个Struts2 Starter应用程序
mvn archetype:create 
-DgroupId=tutorial
    -DartifactId=tutorial
    -DarchetypeGroupId=org.apache.struts /
    -DarchetypeArtifactId=struts2-archetype-starter /
    -DarchetypeVersion=2.0.5-SNAPSHOT
-DremoteRepositories=http://people.apache.org/repo/m2-snapshot-repository
 
参数含义:
 
参数
含义
groupId
当前应用程序隶属的Group的ID,通常是公司所有应用程序的根目录,例如:com.jpleasure
artifactId 
当前应用程序的ID
package
代码生成时使用的根包的名字,如果没有给出,默认使用archetypeGroupId
archetypeGroupId
原型(archetype)的Group ID,因为我们这里使用的是Struts2的原型,所以这里总是org.apache.struts
archetypeArtifactId 
原型(archetype)ID
archetypeVersion 
原型(archetype)版本
remoteRepositories 
包含原型(archetype)的远程资源库的列表,如果部署在标准的maven资源库或者本地,这不需要标记本项
 
一些相关的Maven命令(注意要再项目目录中运行)
构建
mvn install
创建IntelliJ IDEA项目文件
mvn idea:idea
创建Eclipse项目文件
 mvn eclipse:eclipse
运行测试
mvn test
清除
mvn clean
打包
mvn package
获得需要的JAR文件
mvn initialize
使用Jetty运行
mvn jetty:run 在使用此命令之前,需要在xml配置文件中作如下改动:
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  2.   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">  
  3.   <modelVersion>4.0.0</span-->modelVersion>  
  4.   <groupId>com.mycompany.webapp</span-->groupId>  
  5.   <artifactId>myweb</span-->artifactId>  
  6.   <packaging>war</span-->packaging>  
  7.   <version>1.0-SNAPSHOT</span-->version>  
  8.   <name>myweb Maven Webapp</span-->name>  
  9.   <url>http://maven.apache.org</span-->url>  
  10.   <dependencies>  
  11.     <dependency>  
  12.       <groupId>junit</span-->groupId>  
  13.       <artifactId>junit</span-->artifactId>  
  14.       <version>3.8.1<!--</span-->version>  
  15.       <scope>test<!--</span-->scope>  
  16.     </span-->dependency>  
  17.   </span-->dependencies>  
  18.   <build>  
  19.     <finalName>myweb</span-->finalName> 
  20.     <!-- 添加以下6行插件配置代码 -->
  21.     <plugins>  
  22.       <plugin>  
  23.         <groupId>org.mortbay.jetty</groupId>  
  24.         <artifactId>maven-jetty-plugin</artifactId>  
  25.       </plugin>  
  26.     </plugins> 
  27.     <!-- 添加以上6行插件配置代码 -->
  28.   </build>  
  29. </project> 
请注意,在./src/main/目录下面见一个java文件夹,以存放bean,这需要手动来建立:
mkdir $webapp/src/main/java

Maven2较maven1有较大的变化,这里推荐使用maven2并不仅仅因为它是高的版本. 其中变化较大的是在它建立的项目中,只有一个pom.xm配置文件.这里是我的一个工程的配置文件拷贝 attachment/200710/pom.xml.... 你会发现其中的代码如下
 
<project>
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.last999</groupId>
        <artifactId>bbs</artifactId>
        <packaging>war</packaging>
        <version>1.3</version>
        <name>bbs</name>
        <url>last999.com</url>
        <description>mybbs</description>

        <dependencies>
        <!-- Junit -->
        <dependency>
           <groupId>junit</groupId>
           <artifactId>junit</artifactId>
           <version>4.4</version>
           <scope>test</scope>
        </dependency>
.......................
项目都是在<project>中设定,加入要添加新的开源框架,你只需要到maven源的老家走一趟,查到你需要的版本:比如我们现在需要使用struts.那么我们只需要添加以下几行:
<dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>2.0.9</version>
 </dependency>
      如果再需要和spring集成,除了添加spring需要的包外,你只需要添加:
<dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-spring-plugin</artifactId>
            <version>2.0.9</version>
        </dependency>
其他一切就 让maven给你自动完成吧!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值