快速构建 Web 项目
打开IDEA,新建Project,左边菜单栏选择 Maven,直接点 Next

选择GroupId和ArtifactId

选择项目名称,默认会填上工程位置、模块姓名等,直接点Finsh

进入到工程的主页面,注意到右上角跳出是否导入Maven,一般直接选择Auto_Import,这样在POM文件中添加依赖的时候,可以直接导入jar包

现在已经完成普通Maven项目的创建,接下来将要把他变成一个Web项目,只需要在工程名字上右键,选择Add Frame Support

选择Web Application,并勾选创建Web.xml

在工程目录上看到新添加了一个web的文件夹,而且注意到文件夹的图标和普通文件夹的图标不一样,这个文件夹是web的根目录

但是根据Maven规范,定义web根目录默认是在main文件夹下,而且以webapp命名。所以下图所示,将web文件夹重命名为webapp,而且移动到main文件夹下

打开pom.xml文件,指定工程的打包方式为war,当把该文件放到web容器下(可以是tomcat,也可以是jetty等)直接可以运行web程序
在build文件下,加入 Jetty 插件,个人觉得使用Jetty插件的好处是可以在不下载外部服务器的情况下,直接在IDEA中运行程序
<?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.qianmingxs</groupId> <artifactId>Demo</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <build> <plugins> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <version>6.1.21</version> <configuration> <!-- 多少秒进行一次热部署 --> <scanIntervalSeconds>10</scanIntervalSeconds> <!--端口--> <connectors> <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector"> <port>8080</port> <maxIdleTime>60000</maxIdleTime> </connector> </connectors> <scanIntervalSeconds>10</scanIntervalSeconds> <!--根目录,建议/--> <contextPath>/</contextPath> </configuration> </plugin> </plugins> </build> </project>

打开IDEA中的Maven操作窗口,Plugins-jetty-jetty:run,直接双击就可以启动jetty容器, 大专栏 Intellij IDEA创建 Web 项目运行web程序,从控制台也可以看到应用程序在8080端口启动
如果想要进入调试模式,在jetty:run上右键选择 Debug 即可

在浏览器上输入localhost:8080,可以看到程序正常运行;如果在jetty文件中设置的contextPath不为path,运行的url应为localhost:8080/YourContextpath/

jetty:run-war和jetty:run功能差不多,在运行jetty:run-war的时候会先将web工程打包,然后执行war。

打包后的war在功能目录中target目录中

使用Tomcat插件
在插件中加入tomcat插件即可
<?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.qianmingxs</groupId> <artifactId>Demo</artifactId> <version>1.0-SNAPSHOT</version> <packaging>war</packaging> <build> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>tomcat-maven-plugin</artifactId> <version>1.1</version> <configuration> <path>/</path> <port>8080</port> <uriEncoding>UTF-8</uriEncoding> <server>tomcat6</server> </configuration> </plugin> </plugins> </build> </project>
简要说明一下:
path是访问应用的路径
port是 tomcat 的端口号
uriEncoding URL按UTF-8进行编码,这样就解决了中文参数乱码。
Server指定tomcat名称
IDEA 引入自定义jar包
之后可以在 Project Structure 的 Modules - Dependencies看到添加的lib文件,或者可以在Project Structure - Libraries看到添加的lib文件
移除lib文件需要在上述两个位置中进行移除

war打包工具
可以向用户自定义的文件打包到web目录下,下面给出了一个将用户自定义的lib文件打包到WEB-INF目录下
<!--war打包--> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <version>2.1.1</version> <configuration> <webResources> <resource> <directory>${project.basedir}/lib</directory> <targetPath>WEB-INF/lib</targetPath> <filtering>false</filtering> <includes> <include>**/*.jar</include> </includes> </resource> </webResources> </configuration> </plugin>
来源:https://www.cnblogs.com/lijianming180/p/12284265.html