最近学到了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. Nginx+uwsgi部署 Diango(生产环境)

    环境:CentOS6.5 + Nginx1.11.5 + Python3.5.2 1. 安装基础软件包 yum install -y zlib-devel bzip2-devel \ pcre-dev ...

  2. BZOJ3787 gty的文艺妹子序列 【树状数组】【分块】

    题目分析: 首先这种乱七八糟的题目就分块.然后考虑逆序对的统计. 一是块内的,二是块之间的,三是一个块内一个块外,四是都在块外. 令分块大小为$S$. 块内的容易维护,单次维护时间是$O(S)$. 块 ...

  3. 学习Android过程中遇到的未解决问题(个人笔记,细节补充,随时更新)

    201811/13 使用HttpURLConnection对象调用方法又出现IO异常,我又百度个博客搜寻答案,未果.下午试试真机,完美.自己建了服务器tomcat,编写android访问自己tomca ...

  4. Django+Xadmin打造在线教育系统(七)

    全局导航&个人中心&全局搜索 配置全局导航 让index页面也继承base页面,注意首页有个单独的__index.js__ base页面的导航栏也进行配置 <nav> &l ...

  5. IOS端 margin-top 和 margin-bottom 使用负数时的区别

    有以下html代码 <div style="width: 30%;" class="shang"> 1 </div> <div s ...

  6. 【POJ1083】 Moving Tables (并行的搬运)

    BUPT2017 wintertraining(15) #6E 题意 房间1和2,3和4,...,399和400共用一节走廊,有q次从房间li到ri的搬运桌子,一次搬运10分钟.两个搬运如果走廊有重叠 ...

  7. 动态逆序对[CDQ分治]

    题面 luogu cdq分治入门 注意删的是值不是位置! #include <cstdio> #include <algorithm> #include <cmath&g ...

  8. Hdoj 1879.继续畅通工程 题解

    Problem Description 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).现得到城镇道路统计 ...

  9. js jquery 判断元素是否在数组内

    js jquery 判断元素是否在数组内 一,js方法 var arr = ["a", "b", "c"]; // js arr.index ...

  10. Linux中编译或安装程序时提示No such file or directory

    deb系发行版本 Debian Ubuntu Linux Mint等 dpkg -S dpkg-query -S rpm系发行版本 RHEL CentOS等 yum provides rpm -qf ...