2401Idea用GradleKotlin编译Java控制台中文出乱码解决
解决方法
解决方法1
在项目 build.gradle.kts 文件中加入
tasks.withType<JavaCompile> {options.encoding = "UTF-8"
}
tasks.withType<JavaExec> {systemProperty("file.encoding", "utf-8")
}
经测试, 只加
tasks.withType<JavaExec> {systemProperty("file.encoding", "utf-8")
}
就解决了
解决方法2
构建工具选"IntelliJ IDEA"后解决

过程
控制台中文出现乱码

��ѹVoltage=229.5
����Current=358
����Power=48.8
��������PowerFactor=0.59
Ƶ��Frequency=50
�¶�Temperature=20
此时的状态, java文件本身时UTF-8的,
这三处的文件编码都选了UTF8,但还是乱码


在项目 build.gradle.kts 文件中加入
tasks.withType<JavaCompile> {options.encoding = "UTF-8"
}
未能解决
在idea安装目录 idea64.exe.vmoptions文件中加入-Dfile.encoding=UTF-8 依旧无效 , 因为此时是用本地的gradle来编译,不是idea自身来编译

-Dkotlinx.coroutines.debug=off
添加后的的 idea64.exe.vmoptions
-Xms128m
-Xmx2048m
-XX:ReservedCodeCacheSize=512m
-XX:+UseG1GC
-XX:SoftRefLRUPolicyMSPerMB=50
-XX:CICompilerCount=2
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-XX:+IgnoreUnrecognizedVMOptions
-XX:CompileCommand=exclude,com/intellij/openapi/vfs/impl/FilePartNodeRoot,trieDescend
-ea
-Dsun.io.useCanonCaches=false
-Dsun.java2d.metal=true
-Djbr.catch.SIGABRT=true
-Djdk.http.auth.tunneling.disabledSchemes=""
-Djdk.attach.allowAttachSelf=true
-Djdk.module.illegalAccess.silent=true
-Dkotlinx.coroutines.debug=off
仍然未解决 , 因为此时是用本地的gradle来编译,不是idea自身来编译
将构建工具选"IntelliJ IDEA"后解决

选择用idea编译后,解决了.但不甘心,为什么用gradle构建不行呢?
其实,此时无论idea和gradle编译出的class都是UTF-8的了, 那么问题在哪呢?
查看javaSystem的file.encoding属性
在程序中加入一句 System.out.println(System.getProperty("file.encoding"));
System.out.println(System.getProperty("file.encoding"));
发现结果时GBK!!! (构建工具选"IntelliJ IDEA"时是"UTF-8" , 选"Gradle时是"GBK" )
于是在项目 build.gradle.kts 文件中加入
tasks.withType<JavaExec> {systemProperty("file.encoding", "utf-8")
}
解决了
原因
由Gradle8.5启动的jvm环境会使用操作系统的字符集GBK,引起了乱码
相关文章:
2401Idea用GradleKotlin编译Java控制台中文出乱码解决
解决方法 解决方法1 在项目 build.gradle.kts 文件中加入 tasks.withType<JavaCompile> {options.encoding "UTF-8" } tasks.withType<JavaExec> {systemProperty("file.encoding", "utf-8") }经测试, 只加 tasks.withType<…...
Day39 62不同路径 63不同路径II 343整数拆分 96不同的二叉搜索树
62 不同路径 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。 问总共有多少条不同的路径&#…...
JavaScript 的 ~~ 运算和floor 的性能差异
在JavaScript中,~~(双波浪号)和Math.floor()都可以用于向下取整,但它们在行为和性能上有一些差异。要测试这两者之间的性能差异,你可以使用JavaScript的performance.now()方法来进行基准测试。 行为差异 Math.floor()…...
AtCoder Beginner Contest 338F - Negative Traveling Salesman【floyd+状态压缩dp】
原题链接:https://atcoder.jp/contests/abc338/tasks/abc338_f Time Limit: 6 sec / Memory Limit: 1024 MB Score: 500 points、 问题陈述 有一个有N个顶点和M条边的加权简单有向图。顶点的编号为 1 到 N,i/th 边的权重为 Wi,从顶点 U…...
UDP/TCP协议特点
1.前置知识 定义应用层协议 1.确定客户端和服务端要传递哪些信息 2.约定传输格式 网络上传输的一般是二进制数据/字符串 结构化数据转二进制/字符串 称为序列化 反之称之为反序列化 下面就是传输层了 在TCP/IP协议中,我们以 目的端口,目的IP 源端口 源IP 协议号这样一个五…...
编程笔记 html5cssjs 059 css多列
编程笔记 html5&css&js 059 css多列 一、CSS3 多列属性二、实例小结 CSS3 可以将文本内容设计成像报纸一样的多列布局. 一、CSS3 多列属性 下表列出了所有 CSS3 的多列属性: 属性 描述 column-count 指定元素应该被分割的列数。 column-fill 指定如何填充…...
Facebook的元宇宙探索:虚拟社交的新时代
近年来,科技的飞速发展推动着人类社交方式的翻天覆地的改变。在这场数字化革命的浪潮中,社交媒体巨头Facebook正积极探索并引领着一个被誉为“元宇宙”的全新领域,试图为用户打造更为真实、丰富的虚拟社交体验。 元宇宙的崛起 元宇宙这个概念…...
用React给XXL-JOB开发一个新皮肤(四):实现用户管理模块
目录 一. 简述二. 模块规划 2.1. 页面规划2.2. 模型实体定义 三. 模块实现 3.1. 用户分页搜索3.2. Modal 配置3.3. 创建用户表单3.4. 修改用户表单3.5. 删除 四. 结束语 一. 简述 上一篇文章我们实现登录页面和管理页面的 Layout 骨架,并对接登录和登出接口。这篇…...
某赛通电子文档安全管理系统 hiddenWatermark/uploadFile 文件上传漏洞复现
0x01 产品简介 某赛通电子文档安全管理系统(简称:CDG)是一款电子文档安全加密软件,该系统利用驱动层透明加密技术,通过对电子文档的加密保护,防止内部员工泄密和外部人员非法窃取企业核心重要数据资产,对电子文档进行全生命周期防护,系统具有透明加密、主动加密、智能…...
Redis五种数据类型及应用场景
1、数据类型 String(字符串,整数,浮点数):做简单的键值对缓存 List(列表):储存一些列表类型的数据结构 Hash(哈希):包含键值对的无序散列表,结构化的数据 Set(无序集合):交集,并集…...
测试环境搭建整套大数据系统(一:基础配置,修改hostname,hosts,免密)
一:使用服务器配置。 二:修改服务器名称hostname,hosts。 在 Linux 系统中,hostname 和 /etc/hosts 文件分别用于管理主机名和主机名解析。 在三台服务器上,分别执行以下命令。 vim /etc/hostnamexdso-hadoop-test-0…...
maven helper 解决jar包冲突方法
一 概要说明 1.1 说明 首先,解决idea中jar包冲突,使用maven的插件:maven helper插件,它能够给我们罗列出来同一个jar包的不同版本,以及他们的来源,但是对不同jar包中同名的类没有办法。 1.2 依赖顺序 …...
AppSrv-文件共享(23国赛真题)
2023全国职业院校技能大赛网络系统管理赛项–模块B:服务部署(WindowServer2022) 文章目录 AppSrv-文件共享题目配置步骤创建用户主目录共享文件夹:本地目录为d:\share\users\,允许所有域用户可读可写。在本目录下为所有用户添加一个以名称命名的文件夹,该文件夹将设置为所…...
AsyncLocal是如何实现在Thread直接传值的?
一:背景 1. 讲故事 这个问题的由来是在.NET高级调试训练营第十期分享ThreadStatic底层玩法的时候,有朋友提出了AsyncLocal是如何实现的,虽然做了口头上的表述,但总还是会不具体,所以觉得有必要用文字图表的方式来系统…...
Flask 入门1:一个简单的 Web 程序
1. 关于 Flask Flask诞生于2010年, Armin Ronacher的一个愚人节玩笑。不过现在已经是一个用python语言基于Werkzeug工具箱编写的轻量级web开发框架,它主要面向需求简单,项目周期短的小应用。 Flask本身相当于一个内核,其他几乎所…...
维护管理Harbor,docker容器的重启策略
维护管理Harbor 通过HarborWeb创建项目 在 Harbor 仓库中,任何镜像在被 push 到 regsitry 之前都必须有一个自己所属的项目。 单击“项目”,填写项目名称,项目级别若设置为"私有",则不勾选。如果设置为公共仓库&#…...
Qt6入门教程 14:QToolButton
目录 一.简介 二.常用接口 1.void setMenu(QMenu * menu) 2.void setPopupMode(ToolButtonPopupMode mode) 3.void setToolButtonStyle(Qt::ToolButtonStyle style) 4.void setArrowType(Qt::ArrowType type) 5.void setDefaultAction(QAction * action) 三.实战演练 1…...
3D数据转换器HOOPS Exchange如何获取模型的几何数据? 干货预警!
一、概述 前面讲解过模型在内存中的结构,现在回顾一下,当模型导入成功后,整个模型数据会以原生结构的 PRC 组装树形式存放到内存中。(申请 HOOPS Exchange 试用) PRC结构的主要类型包含四种,分别是…...
Coremail启动鸿蒙原生应用开发,打造全场景邮件办公新体验
1月18日,华为在深圳举行鸿蒙生态千帆启航仪式,Coremail出席仪式并与华为签署鸿蒙合作协议,宣布正式启动鸿蒙原生应用开发。作为首批拥抱鸿蒙的邮件领域伙伴,Coremail的加入标志着鸿蒙生态版图进一步完善。 Coremail是国内自建邮件…...
基于CVITEK_CV1821+SOI_Q03P的IPC方案
方案概述: 该方案基于主控平台CVITEK_CV1821和sensor SOI_Q03P,运用于智能监控IP摄像头,可用于户外或室内。采用了2304x1296的分辨率,30的帧率,支持HDR。作为3M的监控摄像头,通过ISP图像调校技术ÿ…...
终极游戏翻译解决方案:XUnity.AutoTranslator完整指南
终极游戏翻译解决方案:XUnity.AutoTranslator完整指南 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 还在为外语游戏中的对话和界面烦恼吗?语言障碍是否让你错过了无数精彩的游戏…...
OpenClaw Windows 最新官方安装教程(超简单一键安装)
⚙️ 前置条件 💻 系统:Windows 10 / Windows 11🧩 终端:系统自带 PowerShell 5.0 及以上🌐 网络:正常外网环境✅ 无需提前安装 Node.js、Git,脚本自动补齐 🚀 正式安装步骤打开 Pow…...
量子LDPC码与横向门技术的突破与应用
1. 量子LDPC码与横向门技术概述量子低密度奇偶校验(qLDPC)码作为量子纠错领域的重要突破,近年来在容错量子计算中展现出独特优势。这类码字通过稀疏校验矩阵实现高效纠错,其核心价值在于:常数编码率:逻辑量…...
Neural Complete架构解析:LSTMBase类与TextEncoderDecoder工作流程
Neural Complete架构解析:LSTMBase类与TextEncoderDecoder工作流程 【免费下载链接】neural_complete A neural network trained to help writing neural network code using autocomplete 项目地址: https://gitcode.com/gh_mirrors/ne/neural_complete Neu…...
OpenAI RLHF的理解
OpenAI RLHF的理解 1. RLHF 的优化目标 objectiveE(x,y)∼DπθRL[rθ(x,y)−βlogπθ(y∣x)πref(y∣x)]γ Ex∼Dpretrain[logπθRL(x)] \text{objective} \mathbb{E}_{(x,y) \sim D_{\pi_\theta^{RL}}} \left[ r_\theta(x, y) - \beta \log \frac{\pi_\theta(y \mid …...
LLM提示压缩技术:原理、实现与优化实践
1. 提示压缩技术概述在大型语言模型(LLM)应用中,推理延迟已成为关键瓶颈。当处理包含多个检索段落的RAG(检索增强生成)系统时,长上下文会导致提示(prompt)体积膨胀,显著增…...
UE5 Vulkan PC平台适配核心:DataDrivenPlatformInfo.ini详解
1. 这不是配置文件,是UE5 Vulkan平台适配的“宪法性文档”你打开UE5项目目录下的Engine/Config/Platform/路径,一眼扫过去,DataDrivenPlatformInfo.ini这个文件名平平无奇——它不像DefaultEngine.ini那样天天被修改,也不像BaseEn…...
Android性能优化深度解析:从理论到实践
在Android开发领域,性能优化是确保应用流畅运行和用户体验的关键。作为一名安卓开发工程师,掌握性能优化技术不仅能提升应用质量,还能在面试和实际工作中脱颖而出。本文将以性能优化为核心领域,深入探讨其理论、工具和实践方法,并提供代码示例和常见面试问题及答案。文章内…...
避开Cox回归的坑:你的数据真的满足比例风险假定吗?
避开Cox回归的坑:你的数据真的满足比例风险假定吗?在医学研究和流行病学分析中,Cox比例风险模型因其能够处理删失数据且不依赖基准风险函数的特定形式而广受欢迎。然而,许多研究者在使用这一强大工具时,往往忽略了一个…...
告别默认动画!在银河麒麟Kylin Linux上打造个性化开机画面的保姆级教程
银河麒麟Kylin Linux开机动画深度定制指南:从原理到艺术创作1. 开机动画背后的技术原理与设计哲学开机动画远不止是几张图片的轮播,它是操作系统启动过程中用户接触到的第一个视觉交互界面。在银河麒麟Kylin Linux系统中,这套机制主要由Plymo…...
