Java工作笔记-使用Maven创建多模块项目
生活随笔
收集整理的這篇文章主要介紹了
Java工作笔记-使用Maven创建多模块项目
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
目錄
?
前言
演示
?
前言
在某些項目中會用到多模塊,一般情況下都使用Maven進行操作,然后手動寫porn.xml,這樣就算是spring boot也是手動寫的,并沒有使用官方的初始化項目工具。
?
?
演示
如下創(chuàng)建kill這個項目,再創(chuàng)建api、model、server這些項目,注意,這些都是Maven項目!
這里把kill目錄下的src刪除,因為這個kill跟項目主要用于項目管理!
最后結果如下:
看下kill目錄下的porn.xml
從中可以知道就是配置了modules后,就形成了多模塊項目。
把所有的porm.xml補充好!
kill下的porn.xml
<?xml version="1.0" encoding="UTF-8"?> <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><groupId>com.debug.kill</groupId><artifactId>kill</artifactId><packaging>pom</packaging><version>1.01</version><name>多模塊項目</name><description>測試多模塊項目</description><modules><module>api</module><module>model</module><module>server</module></modules><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><java.version>1.8</java.version><maven.compiler.source>${java.version}</maven.compiler.source><maven.compiler.target>${java.version}</maven.compiler.target></properties></project>api下的porn.xml
<?xml version="1.0" encoding="UTF-8"?> <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"><parent><artifactId>kill</artifactId><groupId>com.debug.kill</groupId><version>1.01</version></parent><modelVersion>4.0.0</modelVersion><artifactId>api</artifactId><properties><mybatis-pagehelper.version>4.1.2</mybatis-pagehelper.version><lombok.version>1.16.10</lombok.version><javax-validation.version>1.1.0.Final</javax-validation.version><hibernate-validator.version>5.3.5.Final</hibernate-validator.version></properties><dependencies><!--java校驗 跟 hibernate校驗--><dependency><groupId>javax.validation</groupId><artifactId>validation-api</artifactId><version>${javax-validation.version}</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-validator</artifactId><version>${hibernate-validator.version}</version></dependency><!--for page--><dependency><groupId>com.github.pagehelper</groupId><artifactId>pagehelper</artifactId><version>${mybatis-pagehelper.version}</version></dependency><!--lombok--><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>${lombok.version}</version></dependency></dependencies></project>model下的porn.xml
<?xml version="1.0" encoding="UTF-8"?> <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"><parent><artifactId>kill</artifactId><groupId>com.debug.kill</groupId><version>1.01</version></parent><modelVersion>4.0.0</modelVersion><artifactId>model</artifactId><properties><mybatis-spring-boot.version>1.1.1</mybatis-spring-boot.version><mybatis-pagehelper.version>4.1.2</mybatis-pagehelper.version></properties><dependencies><!--api--><dependency><groupId>com.debug.kill</groupId><artifactId>api</artifactId><version>${project.parent.version}</version></dependency><!--spring-mybatis--><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>${mybatis-spring-boot.version}</version></dependency><!--json--><dependency><groupId>com.fasterxml.jackson.core</groupId><artifactId>jackson-annotations</artifactId><version>2.9.0</version><!--<scope>compile</scope>--></dependency></dependencies></project>server下的porn.xml
<?xml version="1.0" encoding="UTF-8"?> <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"><parent><artifactId>kill</artifactId><groupId>com.debug.kill</groupId><version>1.01</version></parent><modelVersion>4.0.0</modelVersion><artifactId>server</artifactId><packaging>war</packaging><properties><start-class>com.debug.kill.server.MainApplication</start-class><spring-boot.version>1.5.7.RELEASE</spring-boot.version><spring-session.version>1.2.0.RELEASE</spring-session.version><slf4j.version>1.7.13</slf4j.version><log4j.version>1.2.17</log4j.version><mysql.version>5.1.37</mysql.version><druid.version>1.0.16</druid.version><guava.version>19.0</guava.version><joda-time.version>2.9.2</joda-time.version><zookeeper.version>3.4.10</zookeeper.version><curator.version>2.12.0</curator.version><shiro.version>1.2.6</shiro.version><gson.version>2.6.1</gson.version><redisson.version>3.8.2</redisson.version><common-lang.version>3.8</common-lang.version></properties><!-- 依賴管理 --><dependencyManagement><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>${spring-boot.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>${slf4j.version}</version></dependency><!--mail--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId><version>${spring-boot.version}</version></dependency><!--model--><dependency><groupId>com.debug.kill</groupId><artifactId>model</artifactId><version>${project.parent.version}</version></dependency><!--guava--><dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>${guava.version}</version></dependency><!-- time --><dependency><groupId>joda-time</groupId><artifactId>joda-time</artifactId><version>${joda-time.version}</version></dependency><!--mysql--><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>${mysql.version}</version></dependency><!--druid--><dependency><groupId>com.alibaba</groupId><artifactId>druid</artifactId><version>${druid.version}</version></dependency><!--spring--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>${spring-boot.version}</version><exclusions><exclusion><groupId>ch.qos.logback</groupId><artifactId>logback-classic</artifactId></exclusion><exclusion><groupId>org.slf4j</groupId><artifactId>log4j-over-slf4j</artifactId></exclusion><exclusion><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId></exclusion><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><!-- jsp 支持 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope></dependency><dependency><groupId>org.apache.tomcat.embed</groupId><artifactId>tomcat-embed-jasper</artifactId><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId></dependency><!-- zookeeper start --><dependency><groupId>org.apache.zookeeper</groupId><artifactId>zookeeper</artifactId><version>${zookeeper.version}</version><exclusions><exclusion><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId></exclusion><exclusion><groupId>log4j</groupId><artifactId>log4j</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.apache.curator</groupId><artifactId>curator-framework</artifactId><version>${curator.version}</version></dependency><dependency><groupId>org.apache.curator</groupId><artifactId>curator-recipes</artifactId><version>${curator.version}</version></dependency><!--for test--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!--shiro權限控制--><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-ehcache</artifactId><version>${shiro.version}</version></dependency><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-core</artifactId><version>${shiro.version}</version></dependency><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-web</artifactId><version>${shiro.version}</version></dependency><dependency><groupId>org.apache.shiro</groupId><artifactId>shiro-spring</artifactId><version>${shiro.version}</version></dependency><!-- gson --><dependency><groupId>com.google.code.gson</groupId><artifactId>gson</artifactId><version>${gson.version}</version></dependency><!-- redis --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-redis</artifactId><version>1.3.5.RELEASE</version></dependency><dependency><groupId>commons-fileupload</groupId><artifactId>commons-fileupload</artifactId><version>1.3.1</version></dependency><dependency><groupId>commons-io</groupId><artifactId>commons-io</artifactId><version>2.4</version></dependency><!--rabbitmq--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-amqp</artifactId><version>${spring-boot.version}</version></dependency><!--redisson--><dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId><version>${redisson.version}</version></dependency><!--common-lang3--><dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>${common-lang.version}</version></dependency></dependencies><build><finalName>kill-${project.parent.version}</finalName><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>${spring-boot.version}</version><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><version>2.4</version><configuration><failOnMissingWebXml>false</failOnMissingWebXml></configuration></plugin></plugins><resources><resource><directory>src/main/resources</directory><filtering>true</filtering></resource></resources></build></project>這里把包全部添加下:
補充:
添加一個spring boot的啟動
server中的MainApplication.java
package com.debug.kill.server;import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.boot.builder.SpringApplicationBuilder; import org.springframework.boot.web.support.SpringBootServletInitializer;@SpringBootApplication public class MainApplication extends SpringBootServletInitializer {@Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {return builder.sources(MainApplication.class);}public static void main(String[] args){SpringApplication.run(MainApplication.class, args);} }?
總結
以上是生活随笔為你收集整理的Java工作笔记-使用Maven创建多模块项目的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++设计模式-中介者模式
- 下一篇: Qt5\MinGw编译器快速解决-QMY