Maven开发多模块项目

环境准备: maven2.2.1 MyEclipse8.5 SVN Tomcat6.0.33

配置maven homeM2_HOME

右键我的电脑的属性,选择高级,在系统环境里添加M2_HOME变量:
Maven开发多模块项目
 

 点击确定后,查看maven版本:mvn –v

 

创建多模块项目

1、用mvn指令创建模块,并将各自的pom.xml配置好:

mvn archetype:create -DgroupId=com.travelsky.cqrd -DartifactId=cqrd-core

 

mvn archetype:create -DgroupId=com.travelsky.cqrd -DartifactId=cqrd-core DarchetypeArtifactId=maven-archetype-webapp

创建了2个项目:cqrd-corecqrd-web,其中cqrd-webweb项目。

 

2、编辑pom.xml文件:

cqrd:

<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.travelsky.cqrd</groupId>
  <artifactId>cqrd</artifactId>
  <packaging>pom</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>cqrd Maven Webapp</name>
  <url>http://maven.apache.org</url>

  <modules>
    <module>cqrd-core</module>
    <module>cqrd-web</module>
  </modules>

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <finalName>cqrd</finalName>
  </build>
</project>
 

cqrd-core:

<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/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>

<parent>
   <groupId>com.travelsky.cqrd</groupId>
   <artifactId>cqrd</artifactId>
   <version>1.0-SNAPSHOT</version>
</parent>

  <groupId>com.travelsky.cqrd</groupId>
  <artifactId>cqrd-core</artifactId>
  <version>1.0-SNAPSHOT</version>
  <packaging>jar</packaging>
  <name>cqrd-core</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>
 

  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>
</project>
 

cqrd-web:

<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>

  <parent>
    <groupId>com.travelsky.cqrd</groupId>
      <artifactId>cqrd</artifactId>
      <version>1.0-SNAPSHOT</version>
    </parent>

  <groupId>com.travelsky.cqrd</groupId>
  <artifactId>cqrd-web</artifactId>
  <packaging>war</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>cqrd-web Maven Webapp</name>
  <url>http://maven.apache.org</url>

  <dependencies>
    <dependency>
      <groupId>com.travelsky.cqrd</groupId>
      <artifactId>cqrd-core</artifactId>
      <version>${project.version}</version>
    </dependency>

    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <finalName>cqrd-web</finalName>
  </build>
</project>
 

使用SVN管理项目

...

 

使用Myeclipse开发maven项目

1、在项目checkout出来以后,使用mvn eclipse:clean eclipse:eclipse构建eclipse项目:
Maven开发多模块项目
 

2、使用MyEclipse导入maven项目的方式将项目作为maven项目导入到workspace:
Maven开发多模块项目
 

选择cqrd
Maven开发多模块项目
 

导出来后:
Maven开发多模块项目
 

tomcat里发布cqrd-web(网上介绍的都是用maven插件继承jetty或者tomcat的方式进行调试和部署,个人觉得很麻烦),要在tomcat里发布cqrd-web,首先得先将cqrd-web转化为web项目:

右键cqrd-web:
Maven开发多模块项目
 

选择Add Web Project Capabilities,在弹出的窗口里设置WebRoot等:

 
Maven开发多模块项目
 

然后就可以进行正常的web项目的开发、部署、调试等操作。

测试如下:

 
 访问:


Maven开发多模块项目

 

来源:百度文库

 

你可能感兴趣的:(maven)