如今java 項目通常使用maven、gradle等工具來管理jar包、打包、發佈。若是一個項目有不少模塊,那般是分紅多個module,主目錄有個parent,負責包含所有的module,而後目錄中多個module文件夾,分別依賴parent或者其餘module。最近遇到個項目,項目好久,代碼所有放在一塊兒,隨着業務拓展變得與愈來愈龐大,因而其對進行module拆分。 java
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <executions> <execution> <id>make-a-jar</id> <phase>compile</phase> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
執行mvn install
就能夠獲得war和jar包,默認是在target文件夾下。 web
<groupId>com.yeetrack.project</groupId> <artifactId>project-parent</artifactId> <version>1.0-SNAPSHOT</version> <packaging>pom</packaging> <name>My Maven Webapp</name> <modules> <module>common</module> <module>module-one</module> <module>module-two</module> <module>module-three</module> </modules>
<groupId>com.yeetrack.project</groupId> <artifactId>module-one</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging>/* 若是此模塊有前臺代碼,那就是war */ <name>module-one</name> <parent> <groupId>com.yeetrack.project</groupId> <artifactId>project-parent</artifactId> <version>1.0-SNAPSHOT</version> </parent>