最近学到了Java Web项目,使用Idea和Maven创建Java Web的时候遇到了诸多问题,最多的还是404问题。现在记录一下解决方案。

一、使用maven创建一个web项目,这一步网上都有,下图是创建好之后的界面。maven会自动下载一些东西。可以看到,我的webapp下面有一个WEB-INF的文件夹,这个文件夹就是以后我们的web项目发布的文件夹,拷贝这个WEB-INF文件夹放到服务器上就可以运行了。

讲一下,WEB_INF文件夹下面有三个东东是必备的

  1. classes文件夹,这个是放项目编译后的字节码的
  2. lib文件夹,这个是放项目所依赖的jar包的
  3. web.xml文件,这个就是一个配置文件

可以看到,上图的WEB-INF文件夹下已经有了web.xml这个文件了(这个是你们404的罪魁祸首,我们会在下面删了它重建),3个必要元素已经有了一个,还差两个文件夹,这个我们自己创建一个,创建好之后如图:

二、第二步就是配置了,我们需要配置一下发布的字节码路径是classes,发布的依赖的jar包路径是lib啥的,貌似Eclipse直接在web.xml配置就可以,Idea的我目前只知道这种

打开 Project Structure

第一个Project项目,不需要改什么东西,我画红线的地方意思是,发布后的文件夹,这个不要动他了,不要改

第二个模块Modules这里,先配置Sources,没有的文件夹自己建上去,可能会有疑问,为什么有out和target两个文件夹?答案是

out文件夹是你的项目的输出的路径,里面只保存了类的classes文件

target文件夹里面有你的类的classes和你的web项目,这个是为你的Tomcat准备的

Paths面板配置需要把我们刚才建立的classes和lib文件夹配置上去,这个地方选哪个都行,因为我目前只有一个Modules,所以我可以使用Project的路径,多个的话自己配吧,一定是out下面的某个文件

Dependercies面板这样配置

第三个Libraries,这样配置,选java

还是选我们创建的lib文件夹

Facets这里,最最最重要!因为我们啥都是自己配置的,这个默认的web.xml就是导致出现404错误的原因,我们需要点击删除上面的web.xml,然后自己新建一个就完事了

删完之后,点击+号,点web.xml,路径选对,选我们的WEB-INF下面。完事。

最后一个Artifacts,这个可以说是非常非常非常重要了,我错了那么多就是因为这个,我们新建一个Exploded,Form我们上面配置的模块Modules。配置完之后如下图。

这里要设置target下面的class,这个是我们发布后的web文件的所在地

至此,我们的Idea配置就完成了。接下来,配置一下Tomcat,写一个jsp试试看。

配置Tomcat,网上都是教程,这里我只强调一点,就是Deployment页面,一定要选择我们刚才创建的Artifact!!!

如图

最后的最后,我们新建一个jsp文件来测试一下我们上面的IDea配置和Tomcat配置。

在webapp下面新建一个jsp,名字叫index,index是默认访问的名字,随便写点东西

上面的绿色的运行小三角。大功告成

Idea使用Maven创建Java Web项目的更多相关文章

  1. IntelliJ IDEA + Maven创建Java Web项目

    1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期. 可以通过其命令做所有相关的工 ...

  2. 使用IntelliJ IDEA 和 Maven创建Java Web项目

    1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期. 可以通过其命令做所有相关的工 ...

  3. 使用IntelliJ IDEA 15和Maven创建Java Web项目(转)

    1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期. 可以通过其命令做所有相关的工 ...

  4. 17. IntelliJ IDEA + Maven创建Java Web项目

    转自:https://www.cnblogs.com/Terry-Wu/p/8006475.html 1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里 ...

  5. 使用IntelliJ IDEA 15和Maven创建Java Web项目(转)

    转自:https://blog.csdn.net/myarrow/article/details/50824793 1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和 ...

  6. idea 中利用maven创建java web 项目

    转自:http://www.linuxidc.com/Linux/2014-04/99687.htm 本文主要使用图解介绍了使用IntelliJ IDEA 12创建Maven管理的Java Web项目 ...

  7. 【Maven】Eclipse 使用Maven创建Java Web项目

    创建环境 系统:win 10 软件:eclipse,maven 创建步骤 需求创建一个Servlet版本是3.0,Java版本是1.7的项目Maven web项目 使用eclipse工具创建maven ...

  8. 【Maven】 Eclipse使用Maven创建Java Web 项目(一)

    需求:创建一个Servlet版本3.0,Java版本是1.7的Maven Web项目 创建环境: 系统:window 7 软件:Eclipse.Maven 创建步骤: 1.使用eclipse工具创建m ...

  9. Maven配置,使用IntelliJ IDEA和Maven创建Java Web项目

    1. 下载Maven 官方地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配置本地仓库路径   3.配置maven环境变量     4 ...

随机推荐

  1. BZOJ2212 [POI2011] Tree Rotations 【treap】

    题目分析: 写的无旋treap应该跑不过,但bzoj判断的总时限.把相关实现改成线段树合并就可以了. 代码: #include<bits/stdc++.h> using namespace ...

  2. bzoj 2588 : Spoj 10628. Count on a tree

    Description 给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权.其中lastans是上一个询问的答案,初始 ...

  3. git 本地推送远程仓库报错: error: failed to push some refs to 'https://github.com/yangtuothink/mxonline.git'

    报错现象 添加远程仓库后 推送代码的时候报错 报错分析 远程代码和本地代码不匹配问题 远程初始仓库的创建有些默认 的 README什么的本地是没有的 需要先同步后再上传 报错解决 git push - ...

  4. php插入日志到数据库,对象转json

    打印插入日志数据到库 M()->table("t_log")->data(array( 'id'=>'6'.time(), 't'=> json_encod ...

  5. Hdoj 2109.Fighting for HDU 题解

    Problem Description 在上一回,我们让你猜测海东集团用地的形状,你猜对了吗?不管结果如何,都没关系,下面我继续向大家讲解海东集团的发展情况: 在最初的两年里,HDU发展非常迅速,综合 ...

  6. 【BZOJ5287】[HNOI2018]毒瘤(动态规划,容斥)

    [BZOJ5287][HNOI2018]毒瘤(动态规划,容斥) 题面 BZOJ 洛谷 题解 考场上想到的暴力做法是容斥: 因为\(m-n\le 10\),所以最多会多出来\(11\)条非树边. 如果就 ...

  7. 一种导致 emwin 中 EDIT 控件不显示的情况

    @2018-12-11 [小记] 设计界面中使用了 EDIT 控件,但在其初始化语句中误使用了 text-color 属性API,导致了控件 EDIT 中的 Text 无法显示,具体如下 hItem ...

  8. Linux下启动,停止,重启Nginx、Mysql、PHP

    LINUX启动Nginx的命令: 一.查询是否启动 [root@jiang php-fpm.d]# ps -ef | grep nginx root 25225 1 0 19:26 ? 00:00:0 ...

  9. 省市区三级数据的MYSQL内容

    省市区三级数据的MYSQL内容 省: /* Navicat MySQL Data Transfer Source Server : rm-2ze0lz594rof5nn72.mysql.rds.ali ...

  10. C# 中使用 ThoughtWorks.QRCode.dll 生成指定尺寸和边框宽度的二维码

    本文介绍在 C# 中使用 ThoughtWorks.QRCode.dll 生成指定尺寸和边框宽度的二维码.网上文章大多只是简单介绍内置参数的设置,根据我的使用目的,增加了自定义目标二维码图片尺寸和白边 ...