SublimeText4软件更新后直接导致DoxyDoxygen插件无法使用
今天打开SublimeText4软件,弹出更新窗口,个人认为反正都是版本4,直接点Download更新,安装后重新打开ST4,插件DoxyDoxygen直接报ImportError错误,打开控制台,都是引入文件错误。
reloading plugin DoxyDoxygen.Doxy
from .doxy_libs.CrashReportHelpers import generate_report,send_report
Traceback (most recent call last):
File "d:\program\Sublime Text 4\Data\Installed Packages\DoxyDoxygen.sublime-package\Doxy.py", line 135, in <module>
import_doxy_objects("CrashReportHelpers", [
~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^
"generate_report",
^^^^^^^^^^^^^^^^^^
"send_report",
^^^^^^^^^^^^^^
])
^^
File "d:\program\Sublime Text 4\Data\Installed Packages\DoxyDoxygen.sublime-package\Doxy.py", line 129, in import_doxy_objects
raise ex
File "d:\program\Sublime Text 4\Data\Installed Packages\DoxyDoxygen.sublime-package\Doxy.py", line 126, in import_doxy_objects
exec(source, globals())
~~~~^^^^^^^^^^^^^^^^^^^
File "<string>", line 1, in <module>
ImportError: bad magic number in 'DoxyDoxygen.doxy_libs': b'\x9e\x0c\r\n'
error: DoxyDoxygen fails to import some files... Please restart SublimeText
不管重启多少次ST4软件都不行,只得复制如上错误信息到deepseek上问了下,得出如下结论:
原因是Python字节码缓存(.pyc)版本不匹配。DoxyDoxygen插件的doxy_libs目录下存在旧的编译缓存,SublimeText4内置的Python版本(通常是 3.8 或 3.3)无法读取
打开ST4的Lib目录看了下,发现更新后的py版本变成3.14了,难怪会报缓存版本不匹配,AI给出的解决办法是手动删除DoxyDoxygen插件包内的缓存文件,让ST4重新生成新版本的.pyc文件,如此ST4的DoxyDoxygen插件就可以使用了,步骤如下。
1、关闭 Sublime Text,确保右下角托盘进程也完全退出
2、进入ST4的插件包目录,我的为d:\program\Sublime Text 4\Data\Installed Packages\
3、DoxyDoxygen.sublime-package文件本质为压缩包,直接用7-Zip打开
4、找到里面的doxy_libs文件夹,删除里面所有的 .pyc 文件,然后保存
5、重启 SublimeText,插件会重新编译并生成正确的缓存文件
我尝试此方法没用,我下载的是便携版,只得再去下载未更新之前的旧版本,然后再把所有插件拷贝到新下载的ST4插件目录中,重启软件才恢复正常。
期间我尝试过一个方法:下载了未更新前的旧版本,解压后把旧版本的程序直接拷贝到更新过的ST软件目录,直接覆盖,重新打开ST4软件,虽然不报错了,但是所有插件都无法设置,连Package Control的设置选项都变灰了,无法再进行修改设置,连主题和字体都无法修改设置,软件就彻底废了。



目前共有 3 条回复