《转载》IntelliJ 2016.2 IDEA 中进行 Java Web 项目开发配置
本文转载自 https://segmentfault.com/a/1190000007088964
1. 新建一个 Web Application 项目
打开 IntelliJ,选择新建项目:

左边栏选择 Java Enterprise,右侧勾选 Web Application,具体如下:

输入项目名:

2. 基本配置
2.1 配置输出目录和库目录
在
project/web/WEB-INF目录下新建两个目录:lib和classes,前者用来保存后期引入的 jar 包,后者用于存放编译输出的文件:
点击右上角的方块按钮:

在
Modules > Paths中设置编译输出目录为之前创建的classes文件夹,如下图所示:
在
Modules > Dependencies中点击下方加号按钮,将之前创建的lib文件夹添加进库目录(之后选择 Jar Directory):


在
Artifacts > Output Layout中,将右侧Available Elements中的lib文件夹加入到左侧,使得lib中的文件会在编译的时候输出:
2.2 添加部署目录
Tomcat 目录下有一个
webapps文件夹,是服务启动的根目录,类似于 Apache 的htdocs。当启动 Tomcat 服务时,访问localhost:8080相当于访问webapps目录;如果我们把项目输出的文件放到
webapps中的项目文件夹中(如:/myproject),就可以通过访问localhost:8080/myproject的方式访问到这一项目;IntelliJ 默认的部署目录是当前工程目录下的
out文件夹。即在写好代码并点击右上角的运行按钮后,IntelliJ 会将项目文件输出到当前项目目录下的out文件夹而不是webapps中,也就意味着,此时如果采用手动启动 Tomcat 服务的方式,是无法通过访问localhost:8080/myproject访问项目的;
这里修改 Artifacts > Output Directory 为 webapps/myproject:
2.3 端口和 Tomcat 设定
点击右上角的 Edit Configurations:

设定启动端口,这里可以取消勾选 Open Brwoser After launch 选项(是否在点击运行按钮后自动打开浏览器并访问项目)

点击 Configure 按钮,设置 Tomcat 位置为安装的 Tomcat 路径。如果在新建项目界面时已经设定了 Tomcat,则这里无需再设置:


在
deployment中设定项目 Context:
如这里设定为 /test 则点击运行按钮后,访问 localhost:8080/test 即可访问该项目。
3. 备忘
如果使用 IntelliJ 的运行按钮启动的 Tomcat,且没有修改默认端口(即和 Tomcat 默认端口 8080 一致),也没有修改项目 Context(仍为
/),则可能会使得设置的servlet无法生效,即在访问设定的url-pattern时提示 404 错误。解决方法是在 IntelliJ 中修改默认端口号、修改默认 Context,或是在修改了部署目录后,使用手动方式启动 Tomcat,并访问该项目;Servlet 的设置方式在 Servlet 3.0 之后除了修改
web.xml文件,还可以以添加 servlet 注解的方式设置:

查看 Servlet 版本的方式是解压 Tomcat 目录下的
lib/servlet-api.jar,并查看解压后的META-INF/MANIFEST.MF文件:
手动启动 Tomcat 的方法:
cd you/path/to/tomcat然后执行./startup.sh或是./catalina.sh start。当然,需要给这两个文件以执行权限:sudo chmod a+x catalina.sh startup.sh。在某一项目中进行全局设置:
File > Other Setting > DefaultSetting;
4. 参考
《转载》IntelliJ 2016.2 IDEA 中进行 Java Web 项目开发配置的更多相关文章
- idea中的java web项目(添加jar包介绍)和java maven web项目目录结构
java web项目 web项目下web根目录名称是可以更改的 idea中新建java web项目,默认src为Sources Root,当然也可以手动改,在Sources Root下右键只能新建Pa ...
- 使用MyEclipse搭建java Web项目开发
转自:http://blog.csdn.net/jiuqiyuliang/article/details/36875217 首先,在开始搭建MyEclipse的开发环境之前,还有三步工具的安装需要完成 ...
- JAVA WEB项目开发案例精粹
http://www.blogjava.net/zongbao/archive/2012/07/24/383884.htmlJAVA WEB项目开发案例精粹.pdf main Alt + / => ...
- SpringMVC内容略多 有用 熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器、过滤器等Web组件以及MVC架构模式进行Java Web项目开发的经验。
熟悉基于JSP和Servlet的Java Web开发,对Servlet和JSP的工作原理和生命周期有深入了解,熟练的使用JSTL和EL编写无脚本动态页面,有使用监听器.过滤器等Web组件以及MVC架构 ...
- 【java项目实战】一步步教你使用MyEclipse搭建java Web项目开发环境(一)
首先.在開始搭建MyEclipse的开发环境之前.还有三步工具的安装须要完毕,仅仅要在安装配置成功之后才干够进入以下的java Web项目开发环境的搭建. 1.安装工具 第一步,下载并安装JDK,到官 ...
- 使用IntelliJ IDEA 15和Maven创建Java Web项目(转)
1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和简单,所以这里也强调下,尽量使用此类工具进行项目构建, 它可以管理项目的整个生命周期. 可以通过其命令做所有相关的工 ...
- 使用IntelliJ IDEA 15和Maven创建Java Web项目(转)
转自:https://blog.csdn.net/myarrow/article/details/50824793 1. Maven简介 相对于传统的项目,Maven 下管理和构建的项目真的非常好用和 ...
- IntelliJ IDEA启动一个普通的java web项目的配置
文:朱季谦 这是我很久以前刚开始用IntelliJ IDEA时记录的笔记,正好赶上最近离职了,可以有比较多的时间把以前的记录整理一下,可以让刚接触到IntelliJ IDEA的童鞋学习如何在Intel ...
- maven3在eclipse3.4.2中创建java web项目
学习maven时参考的一些的博客地址:http://www.cnblogs.com/fnng/archive/2011/12/16/2290587.htmlhttp://sarin.iteye.com ...
随机推荐
- 第三百二十二节,web爬虫,requests请求
第三百二十二节,web爬虫,requests请求 requests请求,就是用yhthon的requests模块模拟浏览器请求,返回html源码 模拟浏览器请求有两种,一种是不需要用户登录或者验证的请 ...
- ping失败的结果分析
①Request timed out 这是大家经常碰到的提示信息,很多文章中说这是对方机器置了过滤ICMP数据包,从上面工作过程来看,这是不完全正确的,至少有下几种情况. a. 对方已关机,或者网络上 ...
- jq dom不存在时绑定事件
$( "a.offsite" ).live( "click", function() { alert( "Goodbye!" ); // j ...
- Spring集成线程池
自己在程序中手动New很容易造成线程滥用,创建线程也是比较消耗资源的操作,所以建议如果有此需求,将线程池统一交给Spring框架进行管理. 如下: <!--Spring 集成线程池,不允许自己开 ...
- php 字符串 以 开头 以结尾 startWith endWith
From: http://www.shipingzhong.cn/node/1217 //第一个是原串,第二个是 部份串function startWith($str, $needle) { retu ...
- 阿里云Centos6.9安装图形化界面
yum -y groupinstall "X Window System" "Chinese Support" "Desktop"
- js 历史
原文http://javascript.ruanyifeng.com/introduction/history.html JavaScript的诞生 JavaScript 因为互联网而生,紧随着浏览器 ...
- AsyncTask异步类的简单操作
package com.example.day9; import org.apache.http.HttpEntity; import org.apache.http.HttpResponse; im ...
- 3. beeGo 自己写Controller 和 请求数据处理
Controller Controller等同于Django里的view,处理逻辑都是在Controller里面完成的,下面就写一个最简单的Controller. 我们在写自己的controller的 ...
- Tensorflow同时加载使用多个模型
在Tensorflow中,所有操作对象都包装到相应的Session中的,所以想要使用不同的模型就需要将这些模型加载到不同的Session中并在使用的时候申明是哪个Session,从而避免由于Sessi ...