• Eclipse下使用maven搭建多模块项目


    暂时将项目分为如下几层:

    domain(域模型层)、dao(数据库访问层)、service(业务逻辑层)、web(表现层),有需要再另行添加(如common等);

    目录结构:


    一、app

    该层为父层,管理其它模块层。

    1.1 创建Maven Project


    1.2 选择maven-archetype-quickstart


    1.3 删除src文件夹,修改pom.xml文件,将<packaging>jar</packaging>修改为<packaging>pom</packaging>,pom表示它是一个被继承的模块

    修改之后的配置文件:
    1. <?xml version="1.0" encoding="UTF-8"?>  
    2. <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">  
    3.   <modelVersion>4.0.0</modelVersion>  
    4.   
    5.   <groupId>com.bdong</groupId>  
    6.   <artifactId>app</artifactId>  
    7.   <version>0.0.1-SNAPSHOT</version>  
    8.   
    9.   <name>app</name>  
    10.   <url>http://maven.apache.org</url>  
    11.   
    12.   <properties>  
    13.     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
    14.   </properties>  
    15.   
    16.   <dependencies>  
    17.     <dependency>  
    18.       <groupId>junit</groupId>  
    19.       <artifactId>junit</artifactId>  
    20.       <version>3.8.1</version>  
    21.       <scope>test</scope>  
    22.     </dependency>  
    23.   </dependencies>  
    24.     
    25.   <span style="color:#ff0000;"><strong><packaging>pom</packaging></strong></span>  
    26.     
    27.   <modules>  
    28.     <module>app-domain</module>  
    29.     <module>app-dao</module>  
    30.     <module>app-service</module>  
    31.     <module>app-web</module>  
    32.   </modules>  
    33. </project>  

    二、app-domain

    2.1 创建Maven Module


    2.2 选择maven-archetype-quickstart

    2.3 修改app-domain目录中的pom.xml文件,把<groupId>com.bdong</groupId><version>0.0.1-SNAPSHOT</version>去掉,加上<packaging>jar</packaging>,groupId和version会继承app中的groupId和version,packaging设置打包方式为jar


    修改后的配置文件:
    1. <?xml version="1.0"?>  
    2. <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"  
    3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
    4.   <modelVersion>4.0.0</modelVersion>  
    5.   <parent>  
    6.     <groupId>com.bdong</groupId>  
    7.     <artifactId>app</artifactId>  
    8.     <version>0.0.1-SNAPSHOT</version>  
    9.   </parent>  
    10.     
    11.   <artifactId>app-domain</artifactId>  
    12.   <strong><span style="color:#ff0000;"><packaging>jar</packaging></span></strong>  
    13.     
    14.   <name>app-domain</name>  
    15.   <url>http://maven.apache.org</url>  
    16.   <properties>  
    17.     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
    18.   </properties>  
    19.   <dependencies>  
    20.     <dependency>  
    21.       <groupId>junit</groupId>  
    22.       <artifactId>junit</artifactId>  
    23.       <version>3.8.1</version>  
    24.       <scope>test</scope>  
    25.     </dependency>  
    26.   </dependencies>  
    27. </project><strong>  
    28. </strong>  

    三、app-dao

    3.1 创建Maven Module

    3.2 选择maven-archetype-quickstart

    3.3 修改app-dao目录中的pom.xml文件,,把<groupId>com.bdong</groupId>和<version>0.0.1-SNAPSHOT</version>去掉,加上<packaging>jar</packaging>,因为groupId和version会继承app中的groupId和version,packaging设置打包方式为jar,同时添加对app-domain模块的依赖

    修改后的配置文件:
    1. <?xml version="1.0"?>  
    2. <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"  
    3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
    4.   <modelVersion>4.0.0</modelVersion>  
    5.   <parent>  
    6.     <groupId>com.bdong</groupId>  
    7.     <artifactId>app</artifactId>  
    8.     <version>0.0.1-SNAPSHOT</version>  
    9.   </parent>  
    10.     
    11.   <artifactId>app-dao</artifactId>  
    12.   <packaging>jar</packaging>  
    13.     
    14.   <name>app-dao</name>  
    15.   <url>http://maven.apache.org</url>  
    16.     
    17.   <properties>  
    18.     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
    19.   </properties>  
    20.     
    21.   <dependencies>  
    22.     <!--依赖app-domain模块-->  
    23.     <dependency>  
    24.         <groupId>com.bdong</groupId>  
    25.         <artifactId>app-domain</artifactId>  
    26.         <version>${project.version}</version>  
    27.     </dependency>  
    28.     <dependency>  
    29.       <groupId>junit</groupId>  
    30.       <artifactId>junit</artifactId>  
    31.       <version>3.8.1</version>  
    32.       <scope>test</scope>  
    33.     </dependency>  
    34.   </dependencies>  
    35.     
    36. </project>  

    四、app-service

    4.1 创建Maven Module

    4.2 选择maven-archetype-quickstart

    4.3  修改app-service目录中的pom.xml文件,,把<groupId>com.bdong</groupId><version>0.0.1-SNAPSHOT</version>去掉,加上<packaging>jar</packaging>packaging设置打包方式为jar,同时添加对app-dao模块的依赖app-service依赖app-dao和app-domain,但是只需添加app-dao的依赖即可,因为app-dao已经依赖了app-domain。

    修改后的配置文件:
    1. <?xml version="1.0"?>  
    2. <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"  
    3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
    4.   <modelVersion>4.0.0</modelVersion>  
    5.   <parent>  
    6.     <groupId>com.bdong</groupId>  
    7.     <artifactId>app</artifactId>  
    8.     <version>0.0.1-SNAPSHOT</version>  
    9.   </parent>  
    10.     
    11.   <artifactId>app-service</artifactId>  
    12.   <packaging>jar</packaging>  
    13.     
    14.   <name>app-service</name>  
    15.   <url>http://maven.apache.org</url>  
    16.     
    17.   <properties>  
    18.     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>  
    19.   </properties>  
    20.     
    21.   <dependencies>  
    22.     <dependency>  
    23.         <groupId>com.bdong</groupId>  
    24.         <artifactId>app-dao</artifactId>  
    25.         <version>${project.version}</version>  
    26.     </dependency>  
    27.     <dependency>  
    28.       <groupId>junit</groupId>  
    29.       <artifactId>junit</artifactId>  
    30.       <version>3.8.1</version>  
    31.       <scope>test</scope>  
    32.     </dependency>  
    33.   </dependencies>  
    34. </project>  

    五、app-web

    5.1 创建Maven Module

    5.2 选择maven-archetype-webapp

    5.3 修改app-web目录中的pom.xml文件,,把<groupId>com.bdong</groupId><version>0.0.1-SNAPSHOT</version>去掉,修改打包方式为<packaging>war</packaging>添加对app-service模块的依赖

    修改后的配置文件:
    1. <?xml version="1.0"?>  
    2. <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"  
    3.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
    4.   <modelVersion>4.0.0</modelVersion>  
    5.   <parent>  
    6.     <groupId>com.bdong</groupId>  
    7.     <artifactId>app</artifactId>  
    8.     <version>0.0.1-SNAPSHOT</version>  
    9.   </parent>  
    10.     
    11.   <artifactId>app-web</artifactId>  
    12.  <strong<span style="color:#ff0000;"><packaging>war</packaging></span></strong>  
    13.     
    14.   <name>app-web Maven Webapp</name>  
    15.   <url>http://maven.apache.org</url>  
    16.   <dependencies>  
    17.     <dependency>  
    18.         <groupId>com.bdong</groupId>  
    19.         <artifactId>app-service</artifactId>  
    20.         <version>${project.version}</version>  
    21.     </dependency>  
    22.     <dependency>  
    23.       <groupId>junit</groupId>  
    24.       <artifactId>junit</artifactId>  
    25.       <version>3.8.1</version>  
    26.       <scope>test</scope>  
    27.     </dependency>  
    28.   </dependencies>  
    29.   <build>  
    30.     <finalName>app-web</finalName>  
    31.   </build>  
    32. </project>  

    六,编译



    控制台打印信息:



    七、运行

    7.1 添加app-web到tomcat中


    7.2 运行tomcat,然后在浏览器中访问:localhost:8080/app-web



    最终,目录结构为:



    使用命令搭建多模块可参考:http://www.cnblogs.com/xdp-gacl/p/4242221.html
  • 相关阅读:
    Filter&Listener
    jsp&mvc开发模式&jstl标签&三层架构
    Tomcat&Servlet
    xml
    SpringMVC
    io流-缓冲流
    io流-文件流节点流
    Io流
    JAVA中反射机制
    IDEA 将web项目部署到tomcat中运行
  • 原文地址:https://www.cnblogs.com/zhangtan/p/7644256.html
Copyright © 2020-2023  润新知