目录
(1)打开 idea,选择new一个新工程,选择 idea 提供好的 maven 管理的 web 工程模板:
(3)此处分别是我们安装好的maven信息,此处不做改动,点击 Next:
(4)点击 Next 后选择项目所在目录,确认项目名称和项目存储路径:
(5)点击 Finish 后开始创建工程,耐心等待,直到出现如下界面:
(6)手动添加 src/main/java 目录,如下图右键 main 文件夹 —> New —> Directory:
(8)点击 OK 后,在新的文件夹 java 上右键 —> Make Directory as —>Sources Root:
(9)最终Maven管理的javaweb项目结构图如下所示:
(10)直接打开 ssm-wind 工程的 pom.xml 文件,再添加所需要依赖的第三方jar包坐标:
(14)添加 jar 包的坐标时,还可以指定这个 jar 包将来的作用范围:
(1)打开 idea,选择new一个新工程,选择 idea 提供好的 maven 管理的 web 工程模板:
(2)填写maven项目信息,点击 Next :
(3)此处分别是我们安装好的maven信息,此处不做改动,点击 Next:
(4)点击 Next 后选择项目所在目录,确认项目名称和项目存储路径:
(5)点击 Finish 后开始创建工程,耐心等待,直到出现如下界面:
(6)手动添加 src/main/java 目录,如下图右键 main 文件夹 —> New —> Directory:
(7)创建一个新的文件夹命名为 java:
(8)点击 OK 后,在新的文件夹 java 上右键 —> Make Directory as —>Sources Root:
(9)最终Maven管理的javaweb项目结构图如下所示:
(9.1)初始化的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>com.wind</groupId>
<artifactId>ssm-wind</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>ssm-wind Maven Webapp</name>
<!-- FIXME change it to the project's website -->
<url>http://www.example.com</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>ssm-wind</finalName>
<pluginManagement><!-- lock down plugins versions to avoid using Maven defaults (may be moved to parent pom) -->
<plugins>
<!--手动设置jdk编译版本-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<version>3.1.0</version>
</plugin>
<!-- see http://maven.apache.org/ref/current/maven-core/default-bindings.html#Plugin_bindings_for_war_packaging -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>3.0.2</version>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
</project>
(9.2)初始化的web.xml文件:
<!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>
</web-app>
(10)直接打开 ssm-wind 工程的 pom.xml 文件,再添加所需要依赖的第三方jar包坐标:
(11)配置本地的Tomcat服务器:
(12)设置项目工程路径:
(13)项目启动时,自动弹出:
(14)添加 jar 包的坐标时,还可以指定这个 jar 包将来的作用范围:
每个 maven 工程都需要定义本工程的坐标,坐标是 maven 对 jar 包的身份定义,比如:入门程序的坐标定义如下:
<!--项目名称,定义为组织名+项目名,类似包名-->
<groupId>com.itheima</groupId>
<!-- 模块名称 -->
<artifactId>hello_maven</artifactId>
<!-- 当前项目版本号, snapshot 为快照版本即非正式版本, release 为正式发布版本 -->
<version>0.0.1-SNAPSHOT</version>
<packaging > :打包类型
jar:执行 package 会打成 jar 包
war:执行 package 会打成 war 包
pom :用于 maven 工程的继承,通常父工程设置为 pom
(15)设置jdk编译版本:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
(16)在插件中添加tomcat,无需:
<build>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-compiler-plugin</artifactId>
<version>2.2</versionversion>
<configuration>
<port>8080</port>
<path>/</path>
</configuration>
</plugin>
</plugins>
</build>