【教程】IDEA创建Maven项目并整合Tomcat发布,问题解决大全
一篇入门教程
一、创建项目并运行
参考这个视频,能顺利运行 helloworld ,本人用的 IDEA2020.2.3 、jdk11 、Tomcat9 、Maven3.6
bilibili-IDEA(开发工具篇)-创建Maven项目并整合Tomcat发布Maven项目
观看之前可以先去官网下载好 Tomcat 、Maven 的zip包
1.1 注意事项:
Maven项目模板选下面这个,而不是上面这个

两个都是webapp,但是如果选错的话,按视频步骤来会少一个 index.jsp
而且运行时会报错
:war exploded: Error during artifact deployment
一个或多个listeners启动失败;
1.2 Maven配置:
视频中只需配置镜像即可,因为创建好项目后需要下载很多文件,如果使用海外镜像的话下载比较慢
<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>http://maven.aliyun.com/nexus/content/groups/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
此外什么环境变量、jdk都没配,不过用IDEA的话目前似乎也不需要通过settings.xml配置
第50行的 localRepository 最好设置一下,和IDEA的Maven设置一致
二、Tomcat配置
2.1 控制台输出乱码问题
乱码问题是因为 Tomcat 日志默认编码是 utf-8 ,但是 Windows国内版和 IDEA 确是 GBK
解决办法:
不推荐修改 IDEA 控制台为 utf-8 ,虽然我们都爱 utf-8 ,但是以后跑其它项目可能会出现问题
可以修改 Tomcat 的日志输出为 GBK 编码
在 tomcat / conf 目录下,设置 logging.properties ,增加参数 java.util.logging.ConsoleHandler.encoding = GBK,重新运行项目
2.2 运行日志位置
有时候出bug总会说详情见日志,但是日志在哪呢?
网上说的固定位置很不可靠,因为因人而异,我推荐大家一款著名的文件搜索软件 Everything ,比Windows文件资源管理器自带的搜索不知强多少倍
搜索tomcat ,注意是区分大小写的
我的路径是:C:\Users\yunmuq\AppData\Local\JetBrains\IntelliJIdea2020.2\tomcat
三、IDEA内的Maven配置
以下设置可以解决Maven导入依赖失败显示红色问题


不生效的话重启IDEA,或者 File-Invalidae Cache 清除缓存(会需要一点点时间加载配置)
接着,如果你要编写jsp文件,会发现其中的 Java代码报错,找不到此类,但是如果你愤怒地点击运行的话,结果可能会让你吃惊,它能运行...
强迫症当然受不了,解决办法是在项目的pom.xml中导入依赖:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
其中的依赖版本可以通过官网:http://mvnrepository.com/ 或者:https://search.maven.org/ 查询
这个飘红问题我也参考过这篇文章,不过没用
在IDEA中使用JSP中的out内置对象,out.println()——println红色解决方法
end...ヾ(≧▽≦*)o
往期精彩文章推荐:
#topics #no-box-shadow-img { box-shadow: none; height: 120px }
《NameSilo的DDNS动态域名解析脚本》
【教程】IDEA创建Maven项目并整合Tomcat发布,问题解决大全的更多相关文章
- JAVA基础之——使用idea创建maven项目 以及使用tomcat本地调试springmvc
前言:关于这个话题网上有很多,本文旨在引导实战纠偏,理论偏少,如果按照步骤还不能达到本文目的,请留言. 1 环境准备 1.1 软件准备 idea:官方下载社区版,下载后安装 maven:Apache- ...
- 在IDEA中创建Maven项目和添加tomcat
IDEA中创建是一种创建maven项目的办法,但不推荐,因为没有使用统一的骨架,可以一开始就选择创建maven项目,步骤如下: 第一步 第二步:设置项目 第三步:进行配置好maven,加上 arche ...
- Intellij idea创建maven项目并配置tomcat
今天刷知乎的时候刷到这么一句话 我觉得还是蛮有趣的,形容的也比较到位,正好最近新建maven项目进行了thrift数据的传输,在此做一个记录 首先idea整合了maven,不需要单独下载 新建一个Pr ...
- IDEA创建MAVEN项目并使用tomcat启动
一.开发环境准备 1.JDK1.8,已经配置好环境变量 2.IDEA2019.2,目前稳定版里面个人认为还不错的 3.tomcat服务器,笔者使用的是apache-tomcat-8.5.57 4.使用 ...
- 遇到问题---java---git下载的maven项目web用tomcat发布时不带子项目
遇到的情况是用git下载maven项目,然后用mvn eclipse:eclipse命令标记为eclipse项目之后,使用maven插件导入之后用tomcat发布运行,发现maven关联的几个子项目没 ...
- 手动创建maven项目+cmd+webapp+tomcat
1.创建文件夹 2.在刚刚创建的文件夹目录下:创建一个scr文件夹和pom.xml文件 3.在pom.xml配置 <?xml version="1.0" encoding=& ...
- 【项目管理和构建】十分钟教程,eclipse配置maven + 创建maven项目(三)
[项目管理和构建]十分钟教程,eclipse配置maven + 创建maven项目(三) 上篇博文中我们介绍了maven下载.安装和配置(二),这篇博文我们配置一下eclipse,将它和maven结合 ...
- eclipse 创建maven 项目 动态web工程完整示例 maven 整合springmvc整合mybatis
接上一篇: eclipse 创建maven 项目 动态web工程完整示例 eclipse maven工程自动添加依赖设置 maven工程可以在线搜索依赖的jar包,还是非常方便的 但是有的时候可能还需 ...
- eclipse下创建maven项目并部署到tomcat服务器(转)
maven项目部署到服务器有很多方法,可以利用jetty-maven-plugin或者tomcat-maven-plugin,这属于maven的知识点. 通常开发中,需要将项目放在服务器上借助开发工具 ...
随机推荐
- Linux 文本处理批量查找与替换
# 搜索含有特定字符串在某个目录并打印出文件名grep -rl "www.baidu.com" /data* -r, --recursive like --directories= ...
- Windows SMBv3 CVE-2020-0796 漏洞分析和l漏洞复现
0x00 漏洞描述 漏洞公告显示,SMB 3.1.1协议中处理压缩消息时,对其中数据没有经过安全检查,直接使用会引发内存破坏漏洞,可能被攻击者利用远程执行任意代码.攻击者利用该漏洞无须权限即可实现远 ...
- Tomcat口令暴力猜解&&后台getshell
Tomcat环境搭建 windows系统xampp搭建tomcat linux yum搭建tomcat 修改tomcat目录下的conf/tomcat-users.xml文件开启管理后台口令认证 &l ...
- MathType如何对齐公式
作为强大的公式编辑器,MathType为我们的学习.工作带来了极大的便利.比如在写论文时,有了它,就可以轻松就把论文里的公式码完:老师在编写试卷时,利用它,可以快速编写出一份试卷.那么在编写公式时,也 ...
- MathType中怎么打约化普朗克常数ħ
普朗克常数记为ħ,是一个物理常数,用以描述量子大小.在量子力学中占有重要的角色,马克斯·普朗克在1900年研究物体热辐射的规律时发现的.如果要打出关于约化普朗克常数ħ的公式,就需要用到专业的公式编辑器 ...
- IDM下载器:站点抓取相关设置介绍
Internet Download Manager(简称IDM)是一款十分好用资源下载器,它的站点抓取功能不仅可以下载被过滤器指定所需文件,例如一个站点的所有图片,或者一个站点的所有音频,也可以下载站 ...
- css3系列之transform 详解scale
scale() scaleX() scaleY() scaleZ() scale3d() 改变的不是元素的宽高,而是 X 和 Y 轴的刻度 本章有个很冷门的知识点 → scale 和 rotate 一 ...
- 解决Redis中数据不一致问题
redis系列之数据库与缓存数据一致性解决方案 数据库与缓存读写模式策略写完数据库后是否需要马上更新缓存还是直接删除缓存? (1).如果写数据库的值与更新到缓存值是一样的,不需要经过任何的计算,可以马 ...
- windows安装redis扩展
Thread Safety enabled 打开phpinfo() 看php版本是ts还是nts, 如上是ts版本的,所以需要安装redis的ts版本, redis的扩展下载地址 https://p ...
- Python命令行参数定义及注意事项
在命令行中运行python代码是很常见的,下面介绍如何定义命令后面跟的参数. 常规用法 Python代码中主要使用下面几行代码来定义并获取需要在命令行中赋值的参数: import argparse p ...