maven学习(三):创建一个maven多模块项目
maven学习(3):创建一个maven多模块项目
一.利用eclipse创建一个maven多模块项目
1.首先创建一个simple-parent项目,这里开始都用eclipse创建项目了
2.开始创建simple-webapp和simple-util 模块
二.开始修改配置文件以及写一些简单的运行类
1.1先修改simple-util的pom文件
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <artifactId>simple-util</artifactId> <packaging>jar</packaging> <name>simple-util</name> <parent> <groupId>org.zcf</groupId> <artifactId>simple-parent</artifactId> <version>1.0</version> </parent> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <testFailureIgnore>true</testFailureIgnore> </configuration> </plugin> </plugins> </pluginManagement> </build> </project>
1.2为simple-util项目添加一个工具类
package com.zcf.util; import java.text.SimpleDateFormat; import java.util.Date; import java.util.List; import java.util.Random; public class CommonUtils { /** * 判断list是否为空 * @param list * @return */ public static boolean ListNotNull(List list){ if(list == null || list.size() < 1){ return false; } return true; } /** * 判断数组是否空 * @param object * @return */ public static boolean ArrayNotNull(Object object[]){ if( null == object || object.length < 1){ return true; } return false; } /** * 得到随机指定最大值的随机数 * @param max * @return */ public static int getRandomInt(int max){ Random random = new Random(); return random.nextInt(max); } /** * 得到17位订单号 * @return */ public static String getOrderNo(){ SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddhhmmss"); //三位随机数 int random = CommonUtils.getRandomInt(900)+100; return sdf.format(new Date()) + random; } /** * 得到15位充值订单号 * @return */ public static String getRechargeNo(){ SimpleDateFormat sdf = new SimpleDateFormat("yyMMddhhmmss"); //三位随机数 int random = CommonUtils.getRandomInt(900)+100; return sdf.format(new Date()) + random; } }
2.1修改simple-webapp的pom文件
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <artifactId>simple-webapp</artifactId> <packaging>war</packaging> <parent> <groupId>org.zcf</groupId> <artifactId>simple-parent</artifactId> <version>1.0</version> </parent> <name>webapp</name> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>3.0-alpha-1</version> <scope>provided</scope> </dependency> <dependency> <groupId>org.zcf</groupId> <artifactId>simple-util</artifactId> <version>1.0</version> </dependency> </dependencies> <build> <pluginManagement> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> </plugin> </plugins> </pluginManagement> </build> </project>
2,2增加一个servlet(这里面用了util项目的工具类),配置到web.xml中
package com.zcf.web; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.zcf.util.CommonUtils; public class TestServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { PrintWriter out = response.getWriter(); out.println("SimpleServlet Executed"+CommonUtils.getOrderNo()); out.flush(); out.close(); } }
<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" > <web-app> <display-name>Archetype Created Web Application</display-name> <servlet> <servlet-name>test</servlet-name> <servlet-class>com.zcf.web.TestServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>test</servlet-name> <url-pattern>/test</url-pattern> </servlet-mapping> </web-app>
3.1修改simple-parent的pom文件
<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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.zcf</groupId> <artifactId>simple-parent</artifactId> <packaging>pom</packaging> <version>1.0</version> <name>simple-parent</name> <modules> <module>simple-util</module> <module>simple-webapp</module> </modules> <build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> </plugins> </pluginManagement> </build> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project>
三.运行web应用
1.对simple-parent执行maven clean install
2.切换到simple-webapp目录下执行maven jetty:run
http://localhost:8080/simple-webapp/test
输出:SimpleServlet Executed20160919034016452