ai.l0ng.openidea,下面所有目录都以它命名。
目录位置
在 macOS 和 Linux 上,其中几项是同一个文件夹。关于 OpenIDEA 对话框会显示配置目录,并提供 打开配置目录。
配置
settings.toml:全局设置,参见设置项。recent.json、recent-groups.json:最近打开的项目及其分组。languages/:你添加或覆盖的语言定义。
用户数据
plugins/:已安装的插件。scratches/:临时文件。history/:所有项目的本地历史记录。project-trust.json:受信任的项目和位置。
本地数据
这里的内容都可以重新下载或重建,所以在 OpenIDEA 关闭时删除是安全的:tools/:OpenIDEA 安装的语言服务器、调试适配器、格式化工具和 JDK。language-server-runtimes/:运行语言服务器所用的运行时。index/:每个项目的符号索引。cache/:构建工具(Maven、Gradle)的同步结果和其他缓存。lsp/:语言服务器的工作区,例如 Java 服务器的导入数据。notebook-runtime/、server/:Notebook 运行时和远程开发服务器的下载。agents/tools/、agents/registry.json:智能体工具和智能体注册表。
项目文件夹
每个项目在根目录的.openidea/ 中保存自己的文件:
settings.toml:选中 此项目 时保存的设置。run.toml:作为项目文件保存的运行配置,适合提交到版本库。run.local.toml:只给自己用的运行配置,OpenIDEA 会把它加入.openidea/.gitignore。workspace.json:工作区包含的项目。
移动本地数据
本地数据可能很大(JDK、语言服务器、索引)。想把它放到其他磁盘,在启动 OpenIDEA 前把OPENIDEA_LOCAL_DATA_DIR 设为一个绝对路径。IDE 随后会使用 <OPENIDEA_LOCAL_DATA_DIR>/ai.l0ng.openidea,不存在时自动创建。
在 Windows 上,例如:
- 如果路径是相对路径或不可写,OpenIDEA 会显示错误并退出,而不会退回默认位置。
- 配置、用户数据和日志的位置不变。即使变量设置有误,日志仍会写入,方便排查原因。
- 已有数据不会自动迁移。可以让 OpenIDEA 重新下载和重建;也可以先退出 OpenIDEA,只移动
tools/、language-server-runtimes/、index/、cache/、lsp/、notebook-runtime/、server/、logs/、agents/tools/、agents/registry.json以及顶层的java-usages-*.jar/java-usages-*.tmp文件,并保持相对路径不变。其他内容请留在原处。
日志
OpenIDEA 每天写一个日志文件openidea.<日期>.log,保留最近 7 个。程序崩溃(panic)的信息也会写入当前日志。
- 用 帮助 › 在访达中显示日志(macOS)、帮助 › 在资源管理器中显示日志(Windows)或 帮助 › 在文件管理器中显示日志(Linux)打开日志目录。关于 OpenIDEA 对话框中也有同样的链接。
- 需要更详细的日志时,启动 OpenIDEA 前设置环境变量
RUST_LOG,例如RUST_LOG=debug。默认级别为info,应用自身输出 debug 级别日志。