不是安装目录下的 bin/ 文件夹,而是用户配置目录里的独立副本才生效;安装目录下的原始文件改了也白改。jetbrains 明确警告安装目录的 .vmoptions 是只读模板,升级会被覆盖,macos 还会因签名失效导致启动失败;正确路径需通过 help → edit custom vm options… 生成,或按系统手动创建于用户配置目录,版本号不同路径亦不同。

直接回答:不是安装目录下的 bin/ 文件夹,而是用户配置目录里的独立副本才生效;安装目录下的原始文件改了也白改。
为什么不能直接改 phpstorm64.vmoptions 在安装目录里
JetBrains 明确警告:安装目录下的 phpstorm64.vmoptions(Linux/macOS)或 phpstorm64.exe.vmoptions(Windows)是只读模板。每次 PhpStorm 升级都会被覆盖;macOS 上还会因签名失效导致启动失败。
常见错误现象:OutOfMemoryError 依旧频繁、修改后重启无变化、IDE 启动报 Invalid JVM options —— 很可能就是改错了文件。
- 64 位 Debian/CentOS/Ubuntu 默认安装路径如
/opt/phpstorm/bin/phpstorm64.vmoptions,仅作参考,不建议编辑 - Snap/Flatpak 安装的 PhpStorm 甚至不提供可写入的安装目录,硬改会失败
- 真正起作用的是 IDE 启动时加载的「用户级配置副本」,路径与操作系统和版本强相关
正确路径:优先用 IDE 内置入口生成配置文件
最稳的方式是让 PhpStorm 自己创建并打开正确的文件位置:
- 已打开项目时:菜单栏 Help → Edit Custom VM Options…
- 欢迎页未打开项目时:点击 Configure → Edit Custom VM Options…
- 如果 IDE 已卡死无法启动:手动创建,路径按系统查——
Linux:~/.config/JetBrains/PhpStorm<version>/phpstorm64.vmoptions</version>(例如 PhpStorm2026.2)
macOS:~/Library/Application Support/JetBrains/PhpStorm<version>/phpstorm.vmoptions</version>
Windows:%APPDATA%\JetBrains\PhpStorm<version>\phpstorm64.exe.vmoptions</version>
环境变量方式:当没有写权限或需多实例差异化配置时
如果你在容器、受限账户或 CI 环境中运行 PhpStorm,PHPSTORM_VM_OPTIONS 是唯一可靠途径:
- 设置变量指向你可控的路径:
export PHPSTORM_VM_OPTIONS="/path/to/my/phpstorm.vmoptions" - 该文件会完全绕过默认路径和用户配置目录,优先级最高
- 注意:变量名大小写敏感,且必须在启动 PhpStorm 前导出(比如写进
~/.bashrc或启动脚本)
别漏掉一点:所有 .vmoptions 文件里每行只能有一个 JVM 参数,空行和注释(# 开头)可以存在,但参数之间不能换行或拼接。
确认改对了没?看日志最准
改完重启后,别凭感觉判断——打开 Help → Show Log in Explorer/Finder,查看最新 idea.log,搜索 JVM Args,里面会明确打印出实际加载的参数和来源路径。如果看到的还是旧值或路径指向 bin/ 目录,说明你没改对地方。
真正容易被忽略的是:不同 PhpStorm 版本的配置目录名带具体年份和小版本号(如 PhpStorm2026.2),升级后旧目录不会自动迁移,Custom VM Options 也不会跨版本复用。每次大版本更新后,记得重新走一遍 Edit Custom VM Options… 流程。
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!










