講一下springboot多模組的構建和部署
阿新 • • 發佈:2019-02-15
因為今天小踩一點坑,話不多說,直接上程式碼,基本直接按照我的結構複製就行。
有三個子模組和一個父模組
子模組有 common biz 和web
依賴關係為
biz依賴common web依賴biz 和common
下面給出每個模組的具體依賴關係
父依賴
<modelVersion>4.0.0</modelVersion> <groupId>com.xieminghui.house</groupId> <artifactId>house-parent</artifactId> <version>0.0.1-SNAPSHOT</version> <modules> <module>house-common</module> <module>house-biz</module> <module>house-web</module> </modules> <packaging>pom</packaging> <name>house</name> <description>房產銷售平臺</description>
引入打包外掛
<build><plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build>
子模組web 很關鍵
<modelVersion>4.0.0</modelVersion> <artifactId>com.xieminghui.house.web</artifactId> <packaging>jar</packaging> <name>com.xieminghui.house.web</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> </properties> <dependencies> <!-- junit 測試--> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- 如果biz 引入了 common ,那麼web就只需要引入biz就可以了--> <dependency> <groupId>com.xieminghui.house</groupId> <artifactId>com.xieminghui.house.biz</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency>
引入springboot打包外掛 和配置 因為最後我們要執行的是它
<!-- 打包部署 命令列: mvn clean package -DskipTests //跳過打包單元測試 啟動 只要在該打包的zip jar包下面 下面執行 cd 到web下面target可以找到打包的jar java -jar xxx.jar 就可以開始運行了 或者後臺執行的話就 nohup java -jar xxx.jar & --> <build> <plugins> <!-- springboot 打包的外掛 --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <configuration> <!-- 打包的型別 --> <mainClass>com.xieminghui.house.HouseApplication</mainClass> <layout>ZIP</layout> </configuration> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
子模組biz
<parent> <artifactId>house-parent</artifactId> <groupId>com.xieminghui.house</groupId> <version>0.0.1-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>com.xieminghui.house.biz</artifactId> <packaging>jar</packaging> <name>com.xieminghui.house.biz</name> <url>http://maven.apache.org</url>
<dependency> <groupId>com.xieminghui.house</groupId> <artifactId>com.xieminghui.house.common</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency>
子模組common
<parent>
<artifactId>house-parent</artifactId> <groupId>com.xieminghui.house</groupId> <version>0.0.1-SNAPSHOT</version> </parent> <modelVersion>4.0.0</modelVersion> <artifactId>com.xieminghui.house.common</artifactId> <packaging>jar</packaging> <name>com.xieminghui.house.common</name>
<url>http://maven.apache.org</url>
至此依賴完成。
到路徑目錄下 執行
mvn clean package -DskipTests
-DskipTests是忽略單元測試,你也可以打包上去
生成結果如圖
因為我們要的結果是在web下面,所以我們cd到web下
cd target目錄
就看到我們剛剛打成功的jar了
這時候只要電腦裝了java就 可以用java -jar xx.jar 運行了
就像這樣
java -jar com.xieminghui.house.web-0.0.1-SNAPSHOT.jar
如果你想執行在後臺,就用下面的命令, 推薦執行在後臺
nohup java -jar com.xieminghui.house.web-0.0.1-SNAPSHOT.jar &
最後專案跑成功如下圖,直接訪問即可
很是辛苦,歡迎不懂的私信和評論哇。