我尝试在我的init文件中通过melpa添加包。它工作,但今天它停止了。为了调试,我开始使用" emacs -q"并在我的暂存缓冲区中键入以下内容:
(require 'package)
(add-to-list 'package-archives
'("melpa" . "https://melpa.org/packages/"))
(package-initialize)
前两行似乎有效。第三行给出了错误和堆栈跟踪:
(wrong-type-argument arrayp nil)
package--add-to-archive-contents(nil "melpa")
package-read-archive-contents()
我的设置错误了吗?我有错误的网址吗?我正在使用GNU Emacs 24.5.1。
答案 0 :(得分:9)
虽然我对它不太熟悉,但我快速查看了package.el
代码。
我的猜测是你的~/.emacs.d/elpa/archives/melpa/archive-contents
文件已损坏"。因此,package--add-to-archive-contents
找不到要从该文件获取的元素的array
。
我相信archive-contents
文件只是本地缓存。如果你删除它,它将被重建,你应该全部设置。