idea上使用tomcat启动Javaweb项目控制台和js动态加载乱码以及项目打包部署到tomcat控制台和js乱码问题解决

1 篇文章 0 订阅
1 篇文章 0 订阅

问题重现:

我原来用的tomcat7.0.65,后由于项目需要tomcat升级为8.5.46,后启动项目用发现控制台乱码,访问web页面,js动态加载的代码中文也是乱码,网上搜索了大量的资料,最终找到解决办法:

1、tomcat控制台乱码:

场景:如果将项目打包放在tomcat的webapps目录下,启动startup.bat,系统打印和System.out.pringln打印和logback打印都是乱码,则如下修改

修改tomcat>conf>logging.properties如下:

 

如果启动项目系统打印和System.out.println()方法打印都正常,logback打印还是乱码,则查看tomcat的bin/catlina.bat最顶部是否配置了启动参数,例如我的就配置了如下的参数,导致我的locback打印的是乱码

但是set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%  -Dfile.encoding=UTF-8"是为了解决前端js中乱码问题的,如果把这个去掉了,前端js又变成乱码了,不过我们可以有另外一种解决方式解决项目部署到tomcat的webapps时前端乱码的问题,解决办法是再tomcat的conf目录下的web.xml中加上fileEncoding,如下图:

idea控制台打印乱码:

1、tomcat的上述修改撤回(即logging.properties配置还原):

2、idea=>File=>setting=>=>Editor=>File Encodings:

做如下修改:

修改好后,进入Help=>Edit Custom Vm Options...:

做如下修改:

然后重启idea,就不会有乱码了,如果还有乱码可以进入idea的安装目录的bin目录下例如我的是D:\Program Files\JetBrains\IntelliJ IDEA 2019.1.3\bin,修改idea.exe.vmoptions和idea64.exe.vmoptions两个文件分别再最后一行加上-Dfile.encoding=UTF-8如下图:

idea.exe.vmoptions:

idea64.exe.vmoptions:

然后重启idea,启动项目就没有乱码了

注意:修改好后一定要重新引入tomcat,不然不更新没用

2、js乱码:

a、项目部署到tomcat的webapps下,启动项目,js乱码问题:

    1)tomcat的bin目录下的catlina.bat中增加:

set "JAVA_OPTS=%JAVA_OPTS% %JSSE_OPTS%  -Dfile.encoding=UTF-8"或set "JAVA_OPTS=%JAVA_OPTS% %LOGGING_CONFIG% -Dfile.encoding=UTF-8",如下图:

,然后双击startup.bat,启动项目,清空浏览器缓存,进入页面就不会有乱码了,但是这种方式可能会使控制台logback日志打印变成乱码,

    2)修改tomcat的conf目录下的web.xml增加fileEncoding,如下图:

然后重启项目,清空浏览器缓存,js就没有乱码了

b、idea上tomcat启动项目js乱码解决

首先点击下图tomcat下拉框>点击Edit Configurations进入Run/Debug Configurations

然后在VM options里加上-Dfile.encoding=UTF-8,点击ok,重启项目就可以了

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值