IDEA下用Maven构建一个聚合的web项目

    今天开始学着在IDEA制作一个web(SSM)项目。我的web项目结构如下:

    IDEA下用Maven构建一个聚合的web项目_第1张图片

  首先新建project-->IDEA下用Maven构建一个聚合的web项目_第2张图片

在这里直接next就好,然后写上自己的工程项目名称和id


IDEA下用Maven构建一个聚合的web项目_第3张图片

注意这里的GroupId和ArtifactId,后面会一直用到的。

然后下一步:

IDEA下用Maven构建一个聚合的web项目_第4张图片完成,这样就创建了一个纯粹的maven工程。

    接下来我要在该目录下一个个创建我的模块(除了controller),Content root最好是在子目录里面而不是跟父模块同级。最后的目录结构如下:

IDEA下用Maven构建一个聚合的web项目_第5张图片在我的结构图里面所有的箭头都代表依赖于,把parent的pom文件写好如下(这里面基本要包含所有在项目里要用的jar包,在子module下就不用再写了):



    4.0.0

    com.taotao
    taotao-parent
    1.0-SNAPSHOT
    
        taotaocommon
        taotaomanager
    
    pom

    

        
            4.12
            4.1.3.RELEASE
            3.2.8
            1.2.2
            1.2.15
            5.1.32
            1.6.4
            2.4.2
            1.0.9
            4.3.5
            1.2
            2.5
            2.0
            2.5
            3.3.2
            1.3.2
            3.3
            3.4.2-fix
            0.9.1
            1.3.1
            2.7.2
            4.10.3
    


    
        
        
            
            
                joda-time
                joda-time
                ${joda-time.version}
            
            
            
                org.apache.commons
                commons-lang3
                ${commons-lang3.version}
            
            
                org.apache.commons
                commons-io
                ${commons-io.version}
            
            
                commons-net
                commons-net
                ${commons-net.version}
            
            
            
                com.fasterxml.jackson.core
                jackson-databind
                ${jackson.version}
            
            
            
                org.apache.httpcomponents
                httpclient
                ${httpclient.version}
            
            
            
                junit
                junit
                ${junit.version}
                test
            
            
            
                org.slf4j
                slf4j-log4j12
                ${slf4j.version}
            
            
            
                org.mybatis
                mybatis
                ${mybatis.version}
            
            
                org.mybatis
                mybatis-spring
                ${mybatis.spring.version}
            
            
                com.github.miemiedev
                mybatis-paginator
                ${mybatis.paginator.version}
            
            
                com.github.pagehelper
                pagehelper
                ${pagehelper.version}
            
            
            
                mysql
                mysql-connector-java
                ${mysql.version}
            
            
            
                com.alibaba
                druid
                ${druid.version}
            
            
            
                org.springframework
                spring-context
                ${spring.version}
            
            
                org.springframework
                spring-beans
                ${spring.version}
            
            
                org.springframework
                spring-webmvc
                ${spring.version}
            
            
                org.springframework
                spring-jdbc
                ${spring.version}
            
            
                org.springframework
                spring-aspects
                ${spring.version}
            
            
            
                jstl
                jstl
                ${jstl.version}
            
            
                javax.servlet
                servlet-api
                ${servlet-api.version}
                provided
            
            
                javax.servlet
                jsp-api
                ${jsp-api.version}
                provided
            
            
            
                commons-fileupload
                commons-fileupload
                ${commons-fileupload.version}
            
            
            
                redis.clients
                jedis
                ${jedis.version}
            
            
            
                org.apache.solr
                solr-solrj
                ${solrj.version}
            
        


    
    
        ${project.artifactId}
        
            
            
                org.apache.maven.plugins
                maven-resources-plugin
                2.7
                
                    UTF-8
                
            
            
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.2
                
                    1.8
                    1.8
                    UTF-8
                
            
        
        
            
                
                
                    org.apache.tomcat.maven
                    tomcat6-maven-plugin
                    2.2
                
            
        
    

然后在taotaomanager下创建一个webapp模板项目controller。如果使用模板构建卡顿建议参考下这篇文章。

重写web.xml:



  taotao-manager
  
    index.html
    index.htm
    index.jsp
    default.html
    default.htm
    default.jsp
  

然后在相应的module的pom文件中加上相应的标签:

 {jar/war/pom}

然后就是在其中添加模块依赖,例如:


            com.taotao 
            taotao-common
            1.0-SNAPSHOT
        

所有的模块依赖的GroupId都是com.taotao。然后在webapp下新建欢迎界面index.jsp:

<%--
  Created by IntelliJ IDEA.
  User: Raymond Zhang
  Date: 2018/4/9
  Time: 15:57
  To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    欢迎来到我的世界


这是我自己写的一个项目

然后在taotaomanager的pom配置tomcat插件(这样就不用去下载tomcat包了):

 
        
        
            
                org.apache.tomcat.maven
                tomcat7-maven-plugin
                2.2
                
                    8080
                    /
                
            
        

在IDEA的右上角配置栏里新增一个maven配置taotaomanager:

IDEA下用Maven构建一个聚合的web项目_第6张图片

接下来启动项目,出现了一点小问题:


先不管他,把taotaomanager里面的关于common的依赖注释掉再启动:

IDEA下用Maven构建一个聚合的web项目_第7张图片

成功,现在去浏览器看看吧:

IDEA下用Maven构建一个聚合的web项目_第8张图片perfect。

 前面出现的问题解决:先install我的parent项目后就可以了:

IDEA下用Maven构建一个聚合的web项目_第9张图片



你可能感兴趣的:(web)