一、IDEA集成Maven插件
1.1、打开IDEA全局配置
1.2、定义Maven坐标
每个Maven工程都需要定义本工程的坐标,坐标是Maven对jar包的身份定义。
<!-- 公司或者组织的唯一标志,并且配置时生成的路径也是由此生成,Maven最终将该项目打包的jar包本地路径:/com/jsonLiu/test-->
<groupId>com.jsonliu.test</groupId>
<!-- 项目的唯一ID,一个groupId项目可能有多个项目,靠artifactId区分-->
<artifactId>testMaven</artifactId>
<!-- 当前项目版本号:每个工程发布后可以发布多个版本,依赖时可以调取不同版本,使用不同的版本号就可以。
snapshot为快照版本即非正式版本,release为正式发布版本-->
<version>1.0-SNAPSHOT</version>
<!-- 名称:可省略,常用于Maven生成的文档-->
<name>testMaven</name>
<!-- 项目描述:可省略,常用于Maven生成的文档-->
<description>Maven test project</description>
<!-- packaging:打包类型
jar:一般java工程
war:web工程
pom:用于Maven工程的继承,通常父工程定义为pom-->
<packaging>jar</packaging>
二、创建Maven的java工程
2.1、使用骨架创建
创建项目选择Maven,选择Create from archetype
填写项目名称,存储地址,坐标位置
确认信息
生成项目结构如下:
手动补齐缺失文件夹
2.2、不使用骨架创建
创建项目选择Maven,不勾选Create from archetype
其他步骤与使用骨架创建一致。
2.3、使用骨架创建javaWeb项目
创建项目结构如下:
需要自己补全剩余目录:
三、构建完整的Web项目
项目结构:
pom.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>org.example</groupId>
<artifactId>test1212</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>test1212 Maven Webapp</name>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.7</maven.compiler.source>
<maven.compiler.target>1.7</maven.compiler.target>
</properties>
<dependencies>
<!--servlet-->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<!-- tomcat插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<port>8080</port> <!-- 项目启动端口 -->
<path>/jsonLiu</path> <!-- 项目访问路径 -->
</configuration>
</plugin>
</plugins>
</build>
</project>
TestServlet:
@WebServlet("/test1")
public class TestServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req, resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("test___________");
resp.getWriter().write("test Maven");
}
}
index.jsp:
<html>
<body>
<h2>Hello World!</h2>
</body>
</html>
运行结果: