IDEA中Maven项目修改JSP后通过配置Tomcat实现立即生效
参考:
IntelliJ IDEA 的 Project Structure 窗口中的 Artifacts 勾选 Include in project build
IDEA中Facets和Artifacts配置说明
idea中artifacts、facets、modules
IntelliJ IDEA 部署 Web 项目,终于搞懂了
传统SpringMvc项目目录和对应tomcat配置如下:


在日常开发过程中,我们修改完java代码后,接着就点击 Build 编译,然后就可以去验证代码了(前提是 On 'Update' Action 选择了 Update classes and resources)
但是修改JSP的时候遇到一个问题:每次修改完JSP文件后,都必须重启tomcat才能使应用的页面生效。仅仅点击Build(Build Project)是不能使JSP页面生效的。
原因是 Build 不是 'Update' Action,无法触发 Update classes and resoures 。
方法1:可以Ctrl + F10 或者点击 Update Tomcat Application 实现触发,这时会有弹框提示。

方法2:如果要使JSP页面或者说是 webapp 目录下的修改生效,就需要点击 Build 下的 Build Artifact。其实这步操作就是 Tomcat配置 Before launch 中的 Build 'favor-bill:war exploded' artifact,即重新构建war包,将classes和resources、webapp目录复制到 target 目录中。
方法3:另外还有一种方法将 Build Artifact 和 Build 合二为一。即在 Project Setting 的 Artifacts 勾选 Include in project build,意为在 Build 的时候构建artifact。

注:IDEA中web应用的配置都在 Project Structure。
还有一个问题,百思不得其解。当启动tomcat后,在 target 和 target/favor-bill-1.0-SNAPSHOT/WEB-INF 下各有1个classes文件夹。而当点击Build后,只会将修改的java文件重新编译到 target/classes 文件夹下,WEB-INF/classes里的class文件没变。这个时候修改的代码在web应用里竟然生效了。
那么IDEA中启动tomcat应用时,生效的是 target/classes 还是 target/favor-bill-1.0-SNAPSHOT/WEB-INF/classes呢???
IDEA中Maven项目修改JSP后通过配置Tomcat实现立即生效的更多相关文章
- maven项目修改名称后,打包名称和现在名称不一致
将pom.xm文件中 <artifactId>health</artifactId> 修改成现在项目名称,然后 maven clean ->maven install 如 ...
- IDEA中MAVEN项目Dependency not found 问题
STEP1: 更新IDEA保存的仓库索引.操作步骤File->Setting->Maven->Repositories->Update.dependecy not found问 ...
- eclipse中Maven项目jar问题
eclipse中Maven项目jar包下载下来了,不然我们import是时候根本导入不进来,网上的方法都试过了,Maven仓库也清空过后重新下载过了,都解决不了. 后来发现虽然jar包是下载下来了,可 ...
- 解决idea中maven项目无法读取src/main/java目录下面的配置文件问题
解决idea中maven项目无法读取src/main/java目录下面的配置文件问题 当我们在maven项目中使用Mybatis的时候,需要给Mybatis配置核心xml文件(MyBatis-Conf ...
- 关于myeclipse中maven项目转换相关设置
关于myeclipse中maven项目转换相关设置 在myeclipse菜单中,Configure->Convert to Maven Project 这个菜单 如果没有的话,需要做如下设置: ...
- idea中maven项目打jar包
从Eclipse换成Idea的小伙伴们可能会找不到Eclipse中Maven项目打jar包的方法,因为eclipse只需要在工程上点击右键,右键菜单中就有Maven打包的相关选项. 然而Idea的右键 ...
- 解决IDEA的maven项目 添加依赖后Reimport无反应
解决IDEA的maven项目 添加依赖后Reimport无反应 如果重启项目和编译器都不管用的话, 找到项目在硬盘上的位置 把该项目的.idea文件夹和xxx.iml文件删除 打开IDEA ...
- Maven 项目在 Eclipse 的创建配置
第1步 New 菜单 Other.. -> Maven -> Maven Project ,然后单击 Next .如下图所示 第2步 在New Maven Project向导中,选择Cre ...
- 大数据入门:Maven项目的创建及相关配置
目录 Maven项目的创建及相关配置 一.Maven的介绍 1.Maven是什么: 2.Maven作用: 3.Maven项目的目录结构: 4.Maven的三点坐标: 5.maven的pom文件: 6. ...
- Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置
文章目录: Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):1.JIRA账号注册 Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):2.PGP ...
随机推荐
- Element-ui 表单嵌套验证
1.当表单的字段值是数组或者对象时的rules配置 对象:直接用obj.xx配置rules和prop 数组:用list.index.xx配置rules和prop <el-form :model= ...
- 规范LR(1)语法分析表
前面已经实现了SLR语法分析表,但是可能会出现即使语法不是二义性文法,也存在移入/规约冲突 状态 i 包含项[A ->α ],当状态 i 出现在栈顶时,栈中的可行前缀时βα且在任何最后句型中a都 ...
- Web components vs. React
Web components vs. React - LogRocket Blog Web Components + Compose 是一条更好的路线. 当然,像 molecule 一样用 HTML ...
- C#获得本地IP地址的各种方法
网上有很多种方法可以获取到本地的IP地址.一线常用的有这么些: 枚举本地网卡 using System.Net.NetworkInformation; using System.Net.Sockets ...
- 解锁 Git Log 更多实用技巧
目前,在软件开发的协作中,Git 无疑是版本控制的王者. 而其中的 git log 命令,犹如一把强大的历史探寻之剑,能够帮助我们深入洞察项目的演进历程. 本篇将为大家整理解读几个实用的 git Lo ...
- 【服务器安全问题】双防火墙有什么意义?SSH暴力破解如何防范
发现我的服务器有大量的陌生IP尝试SSH登录,似乎想暴力破解. 我个人习惯是服务器提供商开放了所有端口的,同时也没有开启运维软件提供的防火墙emm 这倒是让我想到了 一般服务器提供商(比如阿里云.华为 ...
- 【C语言】【二级】将所指字符串中所有下标为奇数位置上的字母转换成大写
题目 请编写一个函数fun,它的功能是:将ss所指字符串中所有下标为奇数位置上的字母转换成大写(若该位置上不是字母,则不转换). 例如,若输入" abc4EFG",则应输出&quo ...
- Redis 的DB多个数据库使用
Redis 自己安装默认提供了16个数据库. 每个数据库都有一个id, 从 0 开始,(0,15). 不同的数据库中数据隔离保存.我们可以通过修改redis的配置文件进行修改数据库的数量. /etc/ ...
- Karmada v1.12 版本发布!单集群应用迁移可维护性增强
本文分享自华为云社区<Karmada v1.12 版本发布!单集群应用迁移可维护性增强>,作者:云容器大未来. Karmada 是开放的多云多集群容器编排引擎,旨在帮助用户在多云环境下部署 ...
- Qt通用方法及类库8
函数名 //异或加密算法 static QString getXorEncryptDecrypt(const QString &str, char key); //异或校验 static uc ...