解决IDEA集成Docker插件后出现日志乱码的问题

修改IDEA的vmoptions文件

找到IDEA安装目录的bin目录,在idea.exe.vmoptions和idea64.exe.vmoptions文件中追加以下内容:

-Dfile.encoding=utf-8

完成以上操作后,重启IDEA即可。

2019-12-20更新

在新版本的IDEA中,可能还需要在菜单栏Help -> Edit Custom VM Options中追加以上内容,IDEA会首先以该文件为准。

补充知识:springboot 源码阅读之 logback-spring.xml 是在哪里加载的?

强制在 logback-spring.xml 中人为制造一个错误,然后启动 springboot 工程,得到如下错误调用栈信息:

进入 LogbackLoggingSystem.java 第 169行所在的方法 loadConfiguration打断点, debug 进入此方法,发现此时传入的参数 location 已经是 classpath:logback-spring.xml, 所以接下来在 AbstractLoggingSystem.initializeWithConventions 方法中打断点,debug进入:

发现config 是在调用 getSpringInitializationConfig 之后被赋值为 classpath:logback-spring.xml 的,所以进入 getSpringInitializationConfig:

进入 getSpringConfigLocations:

getStandardConfigLocations 的方法体为:

返回一个写死了几个文件名的数组

locations[i] = locations[i].substring(0, locations[i].length() - extension.length() - 1) + "-spring." + extension

这句代码的意思是 将上面数组中的每个文件名去掉 "点",去掉 后缀之后的文件名 和 -spring 和 .后缀 拼接一块儿,

如将 logback.xml 变成 logback-spring.xml

以上这篇解决IDEA集成Docker插件后出现日志乱码的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • Spring Boot加载配置文件的完整步骤

    前言 本文针对版本2.2.0.RELEASE来分析SpringBoot的配置处理源码,通过查看SpringBoot的源码来弄清楚一些常见的问题比如: SpringBoot从哪里开始加载配置文件? SpringBoot从哪些地方加载配置文件? SpringBoot是如何支持yaml和properties类型的配置文件? 如果要支持json配置应该如何做? SpringBoot的配置优先级是怎么样的? placeholder是如何被解析的? 带着我们的问题一起去看一下SpringBoot配置相关的源

  • IDEA 启动 Tomcat 项目输出乱码的解决方法

    刚开始碰到的时候没调试成功又放下了,老系统放在 MyEclipse 下面跑,这两天 MyEclipse 和 Tomcat 老出问题,借着这个机会又试了试,成功了. 大部分调试方法来自这里,但是有微调. 在 tomcat Server 中设置 VM options , 值为 -Dfile.encoding=UTF-8,可惜没生效 注意: 刚开始我也是设成UTF-8,但设了一圈回来,Console 窗口里日志行的信息两个字是生效了,但日志行内容还是乱码,于是试着把这一步的设置改成 GBK,居然成功了

  • 解决IDEA2020控制台乱码的方法

    以前使用idea2019版本时,控制台乱码都是修改这两处来解决 1.idea安装的bin目录下找到这两个文件 这两个文件最后一行添加上 -Dfile.encoding=UTF-8 2.idea中tomcat配置上添加 -Dfile.encoding=UTF-8 这样基本就可以解决了. 但是今天换成idea2020以后,这样修改,控制台还是乱码. 如果只是tomcat日志中文乱码,就需要修改tomcat配置文件conf/logging.properties 找到此处,原来这三处都是UTF-8,把它

  • 解决IDEA集成Docker插件后出现日志乱码的问题

    修改IDEA的vmoptions文件 找到IDEA安装目录的bin目录,在idea.exe.vmoptions和idea64.exe.vmoptions文件中追加以下内容: -Dfile.encoding=utf-8 完成以上操作后,重启IDEA即可. 2019-12-20更新 在新版本的IDEA中,可能还需要在菜单栏Help -> Edit Custom VM Options中追加以上内容,IDEA会首先以该文件为准. 补充知识:springboot 源码阅读之 logback-spring.

  • 解决Jenkins集成docker插件问题的一些方法

    目录 背景 问题一 错误二 错误三 错误四 总结 背景 测试环境使用Jenkins集成docker插件实现测试环境一键部署服务,首先jenkins已安装docker build and publish插件,但是运营job出现了一系列的问题! 问题一 docker执行报错,Build step 'Docker Build and Publish' marked build as failure,导致这句的问题有很多,更详细的错误信息:jenkins容器不支持docker操作? 分析问题:jenki

  • 解决vscode docker插件docker.socket权限问题

    解决办法, 将系统中(如果使用了remote-ssh, 则为远程服务器)所有的.vscode相关进程kill 这些进程都是在 .vscode 文件夹下, 因此可以直接搜索.vscode来kill他们, 然后再重启vscode, 就解决问题了. 知识点扩展: vscode中docker插件无法连接 报错Failed to connect. Is Docker running Error: connect EACCES /var/run/docker.sock 原因分析 原因是docker使用uni

  • 解决docker安装后运行hello-world报错的问题

    在centos7.3上yum安装了docker V1.13.1 但是在运行:docker run hello-world的时候报错: # docker run docker.io/hello-world container_linux.go:247: starting container process caused "process_linux.go:258: applying cgroup configuration for process caused \"Cannot set

  • IDEA 集成 docker 实现远程部署的详细步骤

    1. docker 服务器开启远程访问 登录 docker 所在的远程服务器,使用命令 vim /usr/lib/systemd/system/docker.service 修改配置文件,需注意,修改时确认自己的账户拥有相应权限 主要操作是找到 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 这一行,注释掉,重新添加一行,在后面新增-H tcp://0.0.0.0:2375表示打开2

  • IDEA集成docker实现远程部署的步骤

    1. docker 服务器开启远程访问 登录 docker 所在的远程服务器,使用命令 vim /usr/lib/systemd/system/docker.service 修改配置文件,需注意,修改时确认自己的账户拥有相应权限 主要操作是找到 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock 这一行,注释掉,重新添加一行,在后面新增-H tcp://0.0.0.0:2375表示打开2

  • IDEA集成docker部署springboot项目的全过程

    目录 1.IDEA下载docker插件 2.云服务器docker 2.1 docker的安装 2.2 停止docker服务 2.3 docker配置文件修改 2.4 刷新配置文件 2.5 启动docker服务 2.6 防火墙增加2375端口 2.7 阿里云增加安全组规则 2.8 测试远程HTTP连接 3. maven项目打包 3.1 打包插件 3.2 资源文件的打包及打包后的位置 3.3 docker插件 3.4 clean.install和docker build 4.遇到的坑 5.参考 1.

  • 解决vscode中golang插件依赖安装失败问题

    vscode中安装ms-vscode.go插件后可以开启对go语言的支持,ms-vscode.go插件需要依赖一些工具,安装完成后提示 gocode go-outline go-symbols guru gorename gocode-gomod goreturns golint Installing github.com/ramya-rao-a/go-outline FAILED 由于网络原因,一些依赖工具无法正常安装,需要进行手动安装. 以下为手动安装的工具的步骤: 在%GOPATH%\sr

  • 滚动 docker 中的 nginx 日志思路详解

    docker使用 1. docker ps 查看运行中的容器 2. docker images 查看docker镜像 3. docker rm id(容器id)  删除容器(容器id可以通过docker ps查看,容器必须停止后才能删除) 3.1 删除全部的容器 docker rm `docker ps -a -q` 4. docker stop  id(容器id) 停止容器运行 5. docker rmi  id(镜像id) 删除镜像 6. docker pull ubuntu:16.04(镜

  • 解决Python logging模块无法正常输出日志的问题

    废话少说,先上代码 File:logger.conf [formatters] keys=default [formatter_default] format=%(asctime)s - %(name)s - %(levelname)s - %(message)s class=logging.Formatter [handlers] keys=console, error_file [handler_console] class=logging.StreamHandler formatter=d

随机推荐