《转载》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 ...
随机推荐
- (原)linux下利用cmake来编译jthread开源库
其实上次在用hisi3531平台的时候,就已经编译过一次这个库了,这次换了平台环境,交叉编译器变成了arm-hisiv100-linux-工具链,所以,没办法只能重新来过. 因为之前编译过,所以这次还 ...
- ORA-00918: column ambiguously defined
今天遇到了一个Oracle的SQL问题:ORA-00918: column ambiguously defined 大致的意思就是字段名称不明确,可能存在同名的字段 SELECT * FROM (SE ...
- Kafka 之 入门
摘要: 最近研究采集层,对Kafka做了一个研究.分为入门,中级,高级步步进阶.本篇主要介绍基本概念,适用场景. 一.入门 1. 简介 Kafka is a distributed, parti ...
- Vue文件跳转$router传参数
<button @click = "func()">跳转</button> //js <script> export default{ meth ...
- 8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向
8.1 shell介绍 8.2 命令历史 8.3 命令补全和别名 8.4 通配符 8.5 输入输出重定向 什么是shell? shell是一个命令解释器,提供用户和及其之间的交互 致辞特定语法,比如逻 ...
- SSM是什么框架?
SSM框架,是Spring + Spring MVC + MyBatis的缩写,这个是继SSH之后,目前比较主流的Java EE企业级框架,适用于搭建各种大型的企业级应用系统. 1.Spring简介 ...
- xml文件加密上传和sftp下载解密基本思路
AES对称加密效率高,对大文件加密适合.RSA非对称加密效率低,更安全,对小文件加密适合. 整理 11:12 2016/8/4 加密:1.xml xml.md5摘要 2.(xml)aes加密 (xml ...
- 完美解决ListView中事件ItemCreated中使用ClientID导致插入数据失败
于昨天晚上看到视频做到这个例子,但是发现始终有错误,在ListView的ItemCreated事件中使用了ClientID则会导致数据插入数据库失败.当点击插入按钮时,网页就像点击F5刷新一样,无任何 ...
- Android ROM 打包记录
android5.1平板或手机应用层一些常用的修改项及目录所在: 1.所以系统应用所在的目录: \alps\packages\apps 2.一些系统属性的定义:并且可以仿写自行定义变量 \alps\b ...
- BearSkill纯代码搭建iOS界面
欢迎相同喜欢动效的project师/UI设计师/产品增加我们 iOS动效特攻队–>QQ群:547897182 iOS动效特攻队–>熊熊:648070256 浅谈一下 关于iOS兼容布局一直 ...