阻止 JetBrains IDE 生成指标文件
-Didea.diagnostic.opentelemetry.metrics.file=
-Didea.diagnostic.opentelemetry.meters.file.json=在上一节的基础上更进一步,直接移动应用程序的缓存目录到次级磁盘。
# Offload IDEA system directory to secondary drive
idea.system.path=E:/AppData/Local/JetBrains/IntelliJIdea2025.2
idea.log.path=E:/AppData/Local/JetBrains/IntelliJIdea2025.2/log注意在 2020.1 之后的版本里,需要同步设置 idea.log.path,不然会收到个警告。
但这个把版本号固定在路径里的办法很不通用,一升级就容易冲突。JetBrains 自家会安排每个版本在由版本号组成的目录下,就是这里的 IntelliJIdea2025.2,想要它是个动态变化的值。
好在 properties 文件能处理 ${xxx} 这样的宏,支持来自 java.lang.System.getProperties() 当前状态的值。可问题是怎么直到 IntelliJ 往系统变量里塞了哪些键?
一个简单的方式是用调试器挂上去,运行个表达式拿结果。
先加个 JVM 属性允许挂接调试器。这里用 CLion 是因为 IDEA 不能调试自身,并且开启 suspend 在启动时等待调试器接上在继续,方便打断点。因为对表达式求值得在命中断点后才能用。
-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005接下来启动 CLion,在 IDEA 中 附加到进程,端口号 5005。添加 Java 方法断点,类模式 java.lang.System 方法名 getProperties,监视选方法退出。这一步是为了在程序调用方法后,获取调用结果。免去了自己加载类再调用的麻烦事。
解冻程序继续运行,很快 com.intellij.openapi.application.PathManager.loadProperties 就应该命中断点,继续步进几下就能看到 sysProperties 变量包含了我们要的结果。
拿表达式求值一看,几个关键的值就有了
"idea.paths.selector" -> "CLion2025.1"
"idea.platform.prefix" -> "CLion"
"idea.vendor.name" -> "JetBrains"
"java.io.tmpdir" -> "R:\TEMP\"
"os.arch" -> "amd64"
"os.name" -> "Windows 11"
"os.version" -> "10.0"
"path.separator" -> ";"
"user.country" -> "CN"
"user.dir" -> "C:\WINDOWS\system32"
"user.home" -> "C:\Users\enihsyou"
"user.language" -> "zh"
"user.name" -> "enihsyou"
"user.timezone" -> "Asia/Shanghai"组合组合就有了
# Offload IDEA system directory to secondary drive
idea.system.path=E:/AppData/Local/JetBrains/${idea.paths.selector}
idea.log.path=${idea.system.path}/log启动后检查下 idea.log 日志,没问题
2025-08-25 17:15:02,889 [ 22] INFO - #c.i.p.i.b.AppStarter - locale=zh_CN JNU=UTF-8 file.encoding=UTF-8
idea.config.path=C:\Users\enihsyou\AppData\Roaming\JetBrains\IntelliJIdea2025.2
idea.system.path=E:\AppData\Local\JetBrains\IntelliJIdea2025.2
idea.plugins.path=C:\Users\enihsyou\AppData\Roaming\JetBrains\IntelliJIdea2025.2\plugins
idea.log.path=E:\AppData\Local\JetBrains\IntelliJIdea2025.2\logWindows 11 Temp 目录有很多 xml_file (123).xml
- there are many xml(xx).xml in the temp directory - Microsoft Q&A
- Temp folder keeps filling with xml_file.xml duplicates (Windows 11 23H2) : r/Windows11
每分钟创建 2-3 个文件,每组文件创建时间精确地间隔一分钟,内容都是空。
关闭 Settings / Personalization / TaskBar / Widget(小组件)解决了该问题