springboot通过jar包启动中文日志乱码问题及解决

目录
  • jar包启动中文日志乱码
    • 问题场景
    • 最终定位到logback.xml配置文件
  • springboot jar部署 控制台日志乱码
    • 解决办法

jar包启动中文日志乱码

问题场景

1.idea控制台中文正常

2.打成jar包,通过java -jar运行,通过log打印的日志出现中文乱码,System.out.print("")输出正常。

最终定位到logback.xml配置文件

修改前:

<include resource="org/springframework/boot/logging/logback/base.xml" />

修改后:

<include resource="org/springframework/boot/logging/logback/defaults.xml" />
 
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
        <pattern>${CONSOLE_LOG_PATTERN}</pattern>
    </encoder>
</appender>
 
<root level="INFO">
    <appender-ref ref="console" />
</root>

${CONSOLE_LOG_PATTERN}在defaults.xml中已定义,可以重写。

springboot jar部署 控制台日志乱码

springboot项目打包jar文件 java -jar启动后,logger日志中文乱码

试了很多种办法,CHCP 65000切换cmd编码无效,更改项目编码utf-8一样,增加启动参数 -Dfile.encoding=UTF-8也没效果。

解决办法

将logback-spring.xml 中的所有<charset>UTF-8</charset>注释掉 即可解决

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • idea启动spring项目中文乱码的解决方法

    使用 tomcat8 使用idea启动spring项目(前端jsp)时,发现控制台打印日志的中文全部都乱码,页面部分乱码,从请求分析得到,从后台返回的数据是正常的,只是js里面写死的数据是乱码 从这些信息可以分析得到, 控制台日志中文乱码, 但后台返回前端的编码方式是正常的, 前端js的数据中文乱码 解决方案: 1.控制日志乱码: 这些日志都是容器打印出来的,所以需要是配置容器, tomcat>conf>logging.properties把其它编码换成GBK 2.js中文乱码: 静态js也经

  • springboot乱码问题解决方案

    这篇文章主要介绍了springboot乱码问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在配置文件中添加 #编码设置 spring.http.encoding.charset=UTF-8 spring.http.encoding.enabled=true spring.http.encoding.force=true server.tomcat.uri-encoding=UTF-8 使用springboot:run运行时控制台输出

  • spring boot jar部署控制台日志乱码的解决

    目录 spring boot jar部署控制台日志乱码 问题描述 解决 注释掉或删除 springboot打包后在Windows控制台运行中文乱码 例如 spring boot jar部署控制台日志乱码 问题描述 spring boot jar包部署,通过java -jar 命令运行.jar文件 代码中通过变量log输出到控制台的中文,乱码,但是仅仅是在运行jar时才乱码:而在用eclipse debug时,正常 代码中通过System.out.println()输出的中文,不论是否是通过jar

  • springboot通过jar包启动中文日志乱码问题及解决

    目录 jar包启动中文日志乱码 问题场景 最终定位到logback.xml配置文件 springboot jar部署 控制台日志乱码 解决办法 jar包启动中文日志乱码 问题场景 1.idea控制台中文正常 2.打成jar包,通过java -jar运行,通过log打印的日志出现中文乱码,System.out.print("")输出正常. 最终定位到logback.xml配置文件 修改前: <include resource="org/springframework/bo

  • SpringBoot应用jar包启动原理详解

    目录 1.maven打包 2.Jar包目录结构 3.可执行Jar(JarLauncher) 4.WarLauncher 5.总结 1.maven打包 Spring Boot项目的pom.xml文件中默认使用spring-boot-maven-plugin插件进行打包: <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>s

  • SpringBoot为何可以使用Jar包启动详解

    目录 引言 Spring Boot 打包插件 SpringBoot FatJar 的组织结构 MAINFEST.MF 元信息 启动原理 源码分析 JarLauncher Launcher PropertiesLauncher MainMethodRunner 总结 引言 很多初学者会比较困惑,Spring Boot 是如何做到将应用代码和所有的依赖打包成一个独立的 Jar 包,因为传统的 Java 项目打包成 Jar 包之后,需要通过 -classpath 属性来指定依赖,才能够运行.我们今天就

  • SpringBoot项目运行jar包启动的步骤流程解析

    SpringBoot项目在开发中,方便快捷,有一点原因就是SpringBoot项目可以打jar包运行:把jar包直接扔服务器上,然后运行jar包就能访问项目接口了.下面介绍SpringBoot项目打jar包运行的步骤流程: 一.我们所熟悉的是在开发环境下,直接用开发工具来运行那个启动类,然后就能启动这个项目: 开发环境下启动项目 二. SpringBoot项目打jar包方法: [1]在cmd界面中,进入项目的本地存储地址 cmd命令下进入项目地址 [2]运行maven的打包命令,mvn clea

  • 使用springboot的jar包能够以service方式启动

    目录 springboot的jar包以service方式启动 场景 过程 打包(maven),授权,启动 建立软连接,通过service命令来启动 systemctl配置 Springboot以jar包方式启动.关闭.重启脚本 启动 关闭 重启 springboot的jar包以service方式启动 场景 打出的jar包用java -jar肯定是可以启动的. 这种方式原生简单,但是对运维不友好. 于是要求改造,希望可以用service命令来启动. 过程 技术上完全可以实现的. pom.xml配置

  • SpringBoot的jar包如何启动的实现

    目录 一.简介 二.jar包的内部结构 三.加载过程 1.使用到的一些类 2.过程分析 四.总结 一.简介 ​ 使用过SprongBoot打过jar包的都应该知道,目标文件一般都会生成两个文件,一个是以.jar的包,一个是.jar.original文件.那么使用SpringBoot会打出两个包,而.jar.original的作用是什么呢?还有就是java -jar是如何将一个SpringBoot项目启动,之间都进行了那些的操作? ​ 其实.jar.original是maven在SpringBoo

  • springboot工程jar包部署到云服务器的方法

    首先,springboot在这里不多做介绍了,关于怎么打成jar包,我相信凡是用过的同学都知道吧! 然后就是将jar包上传到云服务器了,这个有好些工具的,博主在这里也不多做说明了! 咱们还是直奔主题吧.... 运行命令:java -jar xxx.jar,然后springboot工程的内置tomcat就开启了,项目已经启动,接下来你就可以访问了. 感觉一切ok,其实你已经掉到坑里了... 怎么回事呢? 当你关闭当前的xshell 命令界面时,再次访问就失效了,why? why? why? 这是因

  • 教你1秒将本地SpringBoot项目jar包部署到Linux环境(超详细!)

    目录 目标 迭代步骤 一.前提: 1.使用Maven的package命令打出一个携带依赖的jar包 2.Window启动jar包 二.linux环境启动jar包 1.先将jar包扔到linux环境 2.测试是否可以启动(需要有Java环境) 3.优化启动脚本,改为后台启动,并将日志输出到springboot.log 4.完善脚本,启动时,如果存在已经启动的服务,先关闭,再启动 三.分离依赖部署 1.上传依赖jar包Linux服务器 2.改造项目的pom.xml文件 3.重新package 4.上

  • SpringBoot项目Jar包如何瘦身部署的实现

    一.背景 SpringBoot 为我们快速开发提供了很好的架子,使得我们只需要少量配置就能开始我们的开发工作,但是当我们需要打包上传部署时,却是很神伤的一个问题,因为打出来的 Jar 包少则十几兆,多则一百来兆,我们需要上传至公网服务器时,是非常慢的,这就引出了今天的主题,SpringBoot项目Jar包如何瘦身部署 1.思路分析 jar,我们可以看出,jar 包里面分为以下三个模块 分为 BOOT-INF,META-INF,org 三个部分,打开 BOOT-INF 可以看到有 classes,

  • 使用SpringBoot打jar包并部署到Tomcat详细步骤

    详细步骤 首先在pom.xml文件中做一些修改: 之前打war包需要修改打包方式,这次不需要了,因为默认就是 jar 包指定最终打成jar包的名称手动指定 resources 文件夹编译打包的路径添加SpringBoot内嵌Tomcat解析jsp的依赖(仅仅是为这个实例而添加) <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/PO

随机推荐