如今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>