第2,3节 《多模块、分工程、打包及合并》学习笔记

学习笔记

拆分模块
  1. 使用maven管理工程。
  2. 新建一个总的工程管理各子工程;
    新建一个总的webapp工程来合并各子webapp工程;
    为业务模块创建对应的子工程,前后台可以分开建工程。
  3. 使用插件maven-war-plugin来合并集成子webapp。
    <plugin>
        <artifactId>maven-war-plugin</artifactId>
        <version>3.2.0</version>
        <configuration>
            <overlays>
                <overlay>
                    <artifactId>customerweb</artifactId>
                    <groupId>com.wwt</groupId>
                </overlay>
                <overlay>
                    <artifactId>goodsweb</artifactId>
                    <groupId>com.wwt</groupId>
                </overlay>
            </overlays>
        </configuration>
    </plugin>
    
  4. 工程间有依赖,需要添加dependency
    <dependencies>
        <dependency>
            <artifactId>customerweb</artifactId>
            <groupId>com.wwt</groupId>
            <version>1.0-SNAPSHOT</version>
            <type>war</type>
        </dependency>
        <dependency>
            <artifactId>goodsweb</artifactId>
            <groupId>com.wwt</groupId>
            <version>1.0-SNAPSHOT</version>
            <type>war</type>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
    </dependencies>
    

打包
  1. 在总工程下执行maven打包命令即可。
  2. 打包的时候总的webapp工程会合并子webapp工程。

    合并原则:
    1. 总webapp工程下的文件优先级最高,总是优先使用它里面的文件。
    2. 根据插件maven-war-pluginoverlay配置的先后顺序,挑选排在前面的工程下的文件。


测试

  1. 使用插件jetty-maven-plugin来部署webapp工程。
     <plugin>
         <groupId>org.eclipse.jetty</groupId>
         <artifactId>jetty-maven-plugin</artifactId>
         <version>9.4.12.v20180830</version>
         <configuration>
             <scanIntervalSeconds>10</scanIntervalSeconds>
             <webApp>
                 <contextPath>/goods</contextPath>
             </webApp>
         </configuration>
     </plugin>
    
  2. 使用maven命令jetty:run来启动jetty容器。可以在ide里配置运行命令。

实践

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容