零零商城之搭建Maven工程

搭好所需的开发环境

Eclipse + Maven + Tomcat + Mysql + Nginx + Redis + Git

为什么要用Maven来管理项目呢?

不使用maven:工程部署时需要手动复制jar包。完成工程构建。非常繁琐。
使用maven:项目构建与依赖管理。Maven最核心的功能是软件包的依赖管理,能够自动分析项目所需要的依赖软件包,并到Maven中心仓库去下载。A)管理依赖的jar包(大大的减少了项目的大小)B)管理工程之间的依赖关系。

后台管理系统的工程结构


创建maven工程

创建llmall-parent(做为所有模块的父工程)

修改pom.xml文件添加依赖


    
        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.7
                    1.7
                    UTF-8
                
            
        
        
            
                
                
                    org.apache.tomcat.maven
                    tomcat7-maven-plugin
                    2.2
                
            
        
    

这里要说明一下:

dependencies与dependencyManagement的区别

dependencies即使在子项目中不写该依赖项,那么子项目仍然会从父项目中继承该依赖项(全部继承)
dependencyManagement里只是声明依赖,并不实现引入,因此子项目需要显示的声明需要用的依赖。如果不在子项目中声明依赖,是不会从父项目中继承下来的;只有在子项目中写了该依赖项,并且没有指定具体版本,才会从父项目中继承该项,并且version和scope都读取自父pom;另外如果子项目中指定了版本号,那么会使用子项目中指定的jar版本。

3.2 创建llmall-common和llmall-manager

创建common模块.png

创建聚合工程.png
创建子模块.png
创建web模块选的是war包.png

在创建好web模块是要新建WEB-INF文件夹添加web.xml。


工程各个模块的说明.png

建立各个模块的依赖关系

依赖关系:
web---->service
service---->mapper
mapper---->pojo
别忘了聚合工程依赖工具类
manager---->common

运行llmall-manager项目

配置tomcat插件

运行web工程需要添加一个tomcat插件。插件必须添加到llmall-manager工程中。因为llmall-manager是聚合工程。在运行时需要把子工程聚合到一起才能运行。


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

启动tomcat命令:tomcat7:run
注意:在启动之前要把各个模块install到maven,要不就会报错!
在web模块中添加index.html。
运行之后如果看到:

运行成功界面.png

恭喜你成功把地基建好,加油吧!骚年!

你可能感兴趣的:(零零商城之搭建Maven工程)