idea中maven项目编译后中文乱码问题

2023-11-15

一、问题描述

idea中maven项目编译后,jar包里的中文乱码。如下图
在这里插入图片描述

二、问题发生原因

2.1、在idea控制台进行编译,使用 mvn clean package -Dmaven.test.skip=true
在这里插入图片描述

2.2、其实编译过程里已经有相关提示信息了,但是当时没注意到。
因为项目没有设置File encodeing,所以使用了maven的 platform encoding:GBK。(maven的默认编码方式可以用控制台输入mvn -v查看)
在这里插入图片描述

在这里插入图片描述

三、问题解决

3.1、在pom文件中配置属性

配置project.build.sourceEncoding属性值为:UTF-8,如下图

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
	</properties>

3.2、重新编译打包

重新编译打包之后的jar中文不再乱码,如下图
在这里插入图片描述

四、问题其他

4.1 修改maven的platform encoding

一开始我也参照其他博客,修改了maven的platform encoding,改为UTF-8。在系统环境变量中,添加变量(变量名:MAVEN_OPTS,变量值:-Dfile.encoding=UTF-8),如下图
在这里插入图片描述
但不知道是我的环境变量设置不对,还是没重启电脑(虽然我在控制台查看maven,maven的platform encoding已经是UFT-8了,如下图)
在这里插入图片描述
这样改完,编译打包的jar里的中文还是乱码

4.2 pom文件其它属性设置

参考其他人博客,除了project.build.sourceEncoding属性可以设置,还有project.reporting.outputEncoding 和 maven.compiler.encoding 。
不过我设置project.build.sourceEncoding就解决了问题,另外两个没有再去试,后续有时间了再设置它俩看看效果。

如果有知道这些属性作用的,也可以评论讲解一下,谢谢

		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <!-- 编译时的编码 -->
        <maven.compiler.encoding>UTF-8</maven.compiler.encoding>

参考了以下博客

https://blog.csdn.net/move_on_on/article/details/123373433
https://blog.csdn.net/xiao__jia__jia/article/details/104258557

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

idea中maven项目编译后中文乱码问题 的相关文章

  • java中的csv到pdf文件

    我正在尝试获得一个csv文件解析为pdf 到目前为止我所拥有的内容附在下面 我的问题是这段代码最终出现在 pdf 中的文件在 csv 文件的第一行被截断 我不明白为什么 附示例 本质上我想要一个没有任何操作的 csv 文件的 pdf 版本
  • 将链接对象转换为流或集合

    我想迭代堆栈跟踪 堆栈跟踪由可抛出对象组成 其 getCause 返回下一个可抛出对象 最后一次调用 getCause 返回 null 示例 a gt b gt null 我尝试使用 Stream iterable 这会导致 NullPoi
  • 由于连接超时,无法通过 ImageIO.read(url) 获取图像

    下面的代码似乎总是失败 URL url new URL http userserve ak last fm serve 126 8636005 jpg Image img ImageIO read url System out printl
  • 无法加载 jar 文件的主类

    我使用 Eclipse IDE 开发了一个应用程序 创建应用程序后 我以 jar 格式导出项目 当我尝试运行此 jar 文件时 出现错误 无法加载主类 请帮忙 当您将项目导出为 jar 时 请参阅此所以问题 https stackoverf
  • 如何将 Spotlight for Help 插入本地化的 macOS 应用程序?

    我正在 macOS 上使用 Swing GUI 框架实现 Java 应用程序 当使用system外观和感觉以及screen菜单栏 Swing 自动插入一个搜索栏 called 聚光灯寻求帮助 https developer apple co
  • JavaFX - setVisible 隐藏元素但不重新排列相邻节点

    在 JavaFX 中 如果我有一个场景有 2VBox元素和每个VBox有多个Label in it 如果我设置顶部VBox to 无形的 为什么底部VBox 不向上移动顶部的场景VBox was The VBox is 无形的但我希望其他物
  • Spring Stomp over Websocket:流式传输大文件

    我的SockJs客户端在网页中 发送帧大小为16K的消息 消息大小限制决定了我可以传输的文件的最大大小 以下是我在文档中找到的内容 Configure the maximum size for an incoming sub protoco
  • 使用 Java 在浏览器中下载 CSV 文件

    我正在尝试在 Web 应用程序上添加一个按钮 单击该按钮会下载一个 CSV 文件 该文件很小 大小仅约 4KB 我已经制作了按钮并附加了一个侦听器 文件也准备好了 我现在唯一需要做的就是创建单击按钮时下载 csv 文件的实际事件 假设 fi
  • Java替换特定字符

    这是我在这个网站上的第一个问题 所以我会尽量不要成为一个十足的菜鸟 我目前正在用java 创建刽子手游戏 所以我问你的问题是我们是否被赋予了 幽灵 这个词 并将 Ghost 替换为 hiddenWord ghost length for i
  • 为什么我在 Mac 上看到“java.lang.reflect.InaccessibleObjectException: Unable to make private java.nio.DirectByteBuffer(long,int)accessibl

    我已经在工作中愉快地构建代码好几天了 但突然我的一个项目 不是全部 失败并出现此错误消息 看看下面的答案吧 我是如何修复它的 起初我用谷歌搜索 看到很多有这个问题的人正在使用 Java 16 但我认为 错误 我正在使用 Java 11 因为
  • 使用 Guava 联合两个 ImmutableEnumSets

    我想联合两个ImmutableEnumSets来自番石榴 这是我的尝试 public final class OurColors public enum Colors RED GREEN BLUE YELLOW PINK BLACK pub
  • 覆盖 MATLAB 默认静态 javaclasspath 的最佳方法

    MATLAB 配置为在搜索用户可修改的动态路径之前搜索其静态 java 类路径 不幸的是 静态路径包含相当多非常旧的公共库 因此如果您尝试使用新版本 您可能最终会加载错误的实现并出现错误 例如 静态路径包含 google collectio
  • 从 html 页面和 javascript 调用 java webservice

    我正在尝试从 javascript 调用 java 实现的 Web 服务 使用 NetBeans IDE 我读过很多关于 jQuery 和 AJAX 的内容 但我似乎无法掌握它 假设我的 Web 服务 WSDL 位于 http localh
  • 从 Java 日历迁移到 Joda 日期时间

    以前 当我第一次设计股票应用相关软件时 我决定使用java util Date表示股票的日期 时间信息 后来我体会到了大部分方法java util Date已弃用 因此 很快 我重构了所有代码以利用java util Calendar 然而
  • 不兼容的类型:在 java netbeans 中对象无法转换为 String

    我试图在我的项目中使用对象数组 但出现错误 incompatible types Object cannot be converted to String 在这一行 ST1 new String emt1 emt2 emt3 emt4 现在
  • 使用 Java 从 S3 上的文件在 S3 上创建 zip 文件

    我在 S3 上有很多文件 需要对其进行压缩 然后通过 S3 提供压缩文件 目前 我将它们从流压缩到本地文件 然后再次上传该文件 这会占用大量磁盘空间 因为每个文件大约有 3 10MB 而且我必须压缩多达 100 000 个文件 所以一个 z
  • 阻止 OSX 变音符号为所有用户禁用 Java 中的 KeyBindings?

    注 我知道这个问题 https stackoverflow com questions 40335285 java keybinds stop working after holding down a key用户必须输入终端命令才能解决此问
  • 重写Object类的finalize()方法有什么用?

    据我所知 在java中如果我们想手动调用垃圾收集器 我们可以执行System gc 1 我们在重写的finalize 方法中做了哪些操作 2 如果我们想手动调用JVM垃圾收集器 是否需要重写finalize 方法 我们在重写的 Finali
  • Java中获取集合的幂集

    的幂集为 1 2 3 is 2 3 2 3 1 2 1 3 1 2 3 1 假设我有一个Set在爪哇中 Set
  • 使用 eclipse IDE 配置 angularjs

    我想开始使用 AngularJs 和 Java Spring 进行开发 我使用 Eclipse 作为 IDE 我想配置我的 Eclipse 以使这些框架无缝工作 我知道我可能要求太多 但相信我 我已经做了很多研究 你们是我最后的选择 任何帮

随机推荐

  • 请说说接口和抽象类的区别?

    1 从使用目的来看 接口只是一个类间的协议 它并没有规定怎么去实现 抽象类可以重用你代码使你的代码更加简洁 2 从行为来看 接口可以多继承 multi implement 抽象类不能实例化 必须子类化才能实例化 3 从属性来看 接口的属性必
  • VOSviewer

    1 文献下载 按需求搜索 wos一次只能导出500条文献信息 如果相关文献过多 可以按被引排序 导出 制表符分隔文件 全记录与引用的参考文献 2 可视化实现 打开VOSviewer软件 单击左区Map下的create 选择 create a
  • 计算机页面设置代码,计算机二级考试Access辅导:页面设置模块代码分享

    Dim up dn le ri si liAs Single co As string 定义边距及页面函数 Sub ymszmk strName As String 页面设置模块On Error GoTo Err ymszmkIf Nz D
  • 【软件测试】如何在笔试中设计一个好的测试用例

    测试用例的重要性 如何以最少的人力 资源投入 在最短的时间内完成测试 发现软件系统的缺陷 保证软件的优良品质 则是软件公司探索和追求的目标 软件测试是有组织性 步骤性和计划性的 为了能将软件测试的行为转换为可管理的 具体量化的模式 需要创建
  • DNS介绍,哪个好,速度快稳定

    介绍 打个比方 你电脑是你家 你家地址是一个IP 你要拜访百度的家 那肯定要知道百度家在哪里 你知道baidu com 但是电脑访问的是网络地址 是数字 其它的他都不认识 百度家IP是220 181 38 148 但是你记不住 你电脑也不知
  • el-dialog弹出层扩展拖拽及拉伸以及双击全屏

    import Vue from vue 使用方法 将以下代码复制到一个js文件中 然后在入口文件main js中import引入即可 给elementUI的dialog上加上 v dialogDrag 指令就可以实现弹窗的全屏和拉伸了 给d
  • Python之虚拟环境venv实战详解

    目录 简介 虚拟环境实战 创建虚拟环境 激活虚拟环境 虚拟环境测试 停止虚拟环境 小结 简介 Python 应用程序通常会使用不属于标准库的包和模块 应用程序有时需要特定版本的库 因为应用程序可能需要修复特定的错误 或者应用程序可能使用库接
  • 我与边缘计算 - [Jetson Xavier] - [浪潮边缘主机环境拓荒]

    目录 目的 过程 1 opencv 2 darknet 3 TensorRT 附录1 blas lapack cblas在Ubuntu上的安装 1 确保机器上安装了gfortran编译器 如果没有安装的话 可以使用 2 下载blas cbl
  • 日常小记,待转语雀

    java中的fast fail机制 r1 12king 博客园概念 fail fast 机制是java集合 Collection 中的一种错误机制 当多个线程对同一个集合的内容进行操作时 就可能会产生fail fast事件 分析 先看一个代
  • 如何在IDEA中创建一个项目

    首先双击IDEAjava运行环境 也就是双击程序啦 点击Create New Project 开始创建一个新的项目 然后点击下一步 next 然后作为小白 不需要勾选下面选项 接着下一步即可 多动动手啦 然后就是给项目名命 名命完以后直接F
  • C++ 多线程编程

    转自 C 标准线程库之共享资源 1 带普通互斥锁的多线程案例 include
  • 4.5创建型模式—————建造者模式(Bulider模式)

    在软件开发过程中有时需要创建一个复杂的对象 这个复杂对象通常由多个子部件按一定的步骤组合而成 例如 计算机是由 OPU 主板 内存 硬盘 显卡 机箱 显示器 键盘 鼠标等部件组装而成的 采购员不可能自己去组装计算机 而是将计算机的配置要求告
  • iOS快捷指令:执行Python脚本(利用iSH Shell)

    文章目录 前言 核心逻辑 配置iSH 安装Python 创建Python脚本 配置启动文件 测试效果 快捷指令 前言 iOS快捷指令所能做的操作极为有限 假如快捷指令能运行Python程序 那么可操作空间就瞬间变大了 iSH是一款免费的iO
  • 恶意代码分析——基础技术篇

    文章目录 恶意代码分析目的 恶意代码分析方法 恶意代码种类 恶意代码静态分析 环境 在线反病毒引擎 获取哈希值 certutil hanshfile path MD5 查找字符串hive string ida火绒剑 加壳 查壳 文件加壳 使
  • mac下使用brew下载软件卡住的处理办法

    方法1 control c 方法2 换成其他的镜像源 比较麻烦 以后再整理 先能用就行
  • [课程复习] 软件工程导论之经典题目回顾 (一)选择题、填空题1

    作者最近在复习考博 乘此机会分享一些计算机科学与技术 软件工程等相关专业课程考题 一方面分享给考研 考博 找工作的博友 另一方面也是自己今后完成这些课程的复习资料 同时也是在线笔记 基础知识 希望对您有所帮助 不喜勿喷 软件工程导论 张海藩
  • docker nexus3磁盘空间满,扩容后导致NullPointerException问题

    文章目录 Nexus修复文档 问题描述 修复过程 遇到的坑 Nexus修复文档 问题描述 公司内部一个私有jar无法上传至服务器 后进入nexus 查看日志 发现报disk异常 查看磁盘占用 只剩几百兆的磁盘在那边瑟瑟发抖了 后公司网管在双
  • vue3.2 对el-table 树型结构数据的处理(干货)

    vue3 2 对el table 树型结构数据的处理 干货 将偏平数据转为树状结构的数据 封装了两种方法 将一维数组处理成带children的el tree树状数据结构 第一种方法 使用递归的方式处理偏平化数据 Method 使用递归的方式
  • cad卸载_CAD卸载后为什么安装不了?解决方法原来是这样!

    看到有不少小伙伴说自己遇到这样的问题 想要尝试重新安装CAD软件 但是在安装过程中系统却提示CAD软件已安装 导致我们无法继续安装 怎么办 出现这种情况通常是因为软件没有正常卸载导致的 例如直接删除安装目录文件和快捷方式 这样做的结果是注册
  • idea中maven项目编译后中文乱码问题

    一 问题描述 idea中maven项目编译后 jar包里的中文乱码 如下图 二 问题发生原因 2 1 在idea控制台进行编译 使用 mvn clean package Dmaven test skip true 2 2 其实编译过程里已经