Emacs cider clojure : queue-0. 1.1 不可用

标签 emacs clojure

Windows 7 x64,Emacs 24.3.1

尝试为 Clojure 重新安装苹果酒,因为已经几个月了,我想更新一些东西。我收到 错误:包 'queue-0.1.1' 不可用。我一个月前就开始工作了,所以我不确定发生了什么。我在此期间安装了一堆 MingW 和 CodeBlocks 东西,但我认为这不是这种情况下的问题。

我检查了https://github.com/milkypostman/melpa/issues/2005以及来自简单的谷歌搜索的其他一些链接,但这只是开发人员讨论,有更多链接;没有我能够辨别的实际解决方案;我只是一个低级用户,不是emacs开发者,所以不要关注关于包食谱等的讨论。

我将 queue-0.1.1.el 复制到一个看似合适的 Elpa 目录中,但仍然没有成功,并且它没有通过 package-install-package 或从所示的各种 repos 安装以下。我能够通过 load-file 加载它,但这没有帮助。队列实际上显示在 https://elpa.gnu.org/packages/ 中所以它应该工作,对吧?我在 elpa 子目录中有该文件,所以它应该可以工作,对吗?呸,这个 emacs... 于 1994 年首次推出,但我仍然无法理解。

我的初始化文件的相关部分如下所示。我已经尝试过目前被注释掉的各种东西,以各种排列,但没有运气。

有什么想法吗? 谢谢

;; Manually make queue available
;;(add-to-list 'load-path "~/.emacs.d/elpa/queue-0.1.1")
;;(load "queue-0.1.1.el")

(require 'package)
(setq package-archives
     '(;;("marmalade" . "http://marmalade-repo.org/packages/")
       ("gnu"        . "http://elpa.gnu.org/packages/")
       ("melpa"      . "http://melpa.org/packages/" )))

(package-initialize)


;;(require 'package)
;;(add-to-list 'package-archives
;;             '("melpa" . "http://melpa.org/packages/") t)
;;(when (< emacs-major-version 24)
;; For important compatibility libraries like cl-lib
;;  (add-to-list 'package-archives '("gnu" . "http://elpa.gnu.org/packages/")))
;;(package-initialize)

(when (not package-archive-contents)
  (package-refresh-contents))

(defvar my-packages '(
          paredit               ;; keeps parentheses balanced
          slime                 ;; for interaction with CL
          auto-complete         ;; used for ac-nrepl
          eldoc                 ;; shows argument completion in the echo area for elisp
          highlight-parentheses ;; as described
          tabbar                ;; tabs at top of window
          color-theme           ;; all color themes
          color-theme-solarized ;; nice color theme
          smart-tab             ;; tabs for c/c++
          linum                 ;; Line numbers in the border
          cider
          cider-test

))


(dolist (p my-packages)
  (when (not (package-installed-p p))
    (package-install p)))

更新: 我能够从 package-install-package 手动安装 cider 和 ac-cider,并且在 melpa 中手动复制 queue-0.1.1 目录似乎在这种情况下有效,但如果我删除 queue-0.1.1 init 文件开头的内容仍然无法从官方 repo 中找到。

最佳答案

我遇到了这个问题,通过删除 .emacs.d/elpa 的内容然后重新安装包解决了这个问题。我从未找到真正的根本原因,我最好的猜测是某些子依赖项发生了变化,而 emacs 仍在尝试获取它。

完整的工作 init.el 在这里可用:https://github.com/thearthur/arthur-s-emacs-config

我采用从 init.el 中安装所有包的方法,因此任何此类问题都可以通过删除该目录来解决。在新系统上进行设置也容易得多。

关于Emacs cider clojure : queue-0. 1.1 不可用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27727110/

相关文章:

emacs - 在括号对后将 Emacs 设置为智能自动行?

vim - 任何 Emacs 命令,如 vim 中的粘贴模式?

clojure - 如何从 Clojure 调用 Java 类的 eval 方法?

java - 获取字符串中非唯一单词的边界索引

Clojure - 打嗝下拉菜单

macros - 使用宏生成函数(或其他宏)时避免符号捕获

emacs - 如何通过elisp创建一个空文件?

emacs - 组织模式代码块评估

clojure - 为什么 Clojure/REPL 将相同数字的 float 和整数表示不同?

emacs - 仅使用邪恶包中的两个函数作为键绑定(bind)