7

で新しいプロジェクトを作成しましたleincore.clj私はemacsで開きます。M-x clojure-mode、およびを必ず実行しM-x nrepl-enable-on-existing-clojure-buffersます。

それから私は実行M-x nrepl-jack-inし、ミニバッファで取得します

nREPL サーバーを起動しています...

次のようなメッセージが続きます。

接続しました。すべてを最適化すると、必ず不幸になります。-ドナルド・クヌース

バッファー名は です*nrepl*が、バッファーには Clojure Repl が含まれておらず、代わりに完全に空白になっています。

何かを入力すると(つまり、何でも)、次のようになります。

間違った型引数: integer-or-marker-p、nil

core.cljバッファに戻って を押すC-c C-lと、その結果、バッファ内の最後の関数の名前空間名がミニバッファに取得されます。そして、カーソルを関数定義の最後に置いて を押すと、次のC-x C-eようになります。

CompilerException java.lang.RuntimeException: Unable to resolve symbol: x in this context, compiling:(NO_SOURCE_PATH:1:1)

を使用して、依存関係のない新しい lein ディレクトリを作成しようとしlein new project-nameましたが、上記と同じ手順を試したところ、同じ結果が得られました。

他に何を確認できますか、または何が間違っていますか?

編集:追加情報

空の*nrepl*バッファーに何かを入力し、入力した内容を押しC-x C-eようとすると、ミニ バッファーに次のメッセージが表示されます。

Lisp サブプロセスはありません。変数「inferior-lisp-buffer」を参照

また、私は実行しています:

GNU Emacs 24.3.1

Java 1.6.0_27 OpenJDK 64 ビット サーバー VM 上の Leiningen 2.1.2

4

1 に答える 1

3

私は自分のセットアップでこの正確な問題を修正しました。.emacs.d をバックアップの場所に移動し、.emacs のバックアップ コピーを作成します。次の行だけで新しい .emacs を作成します。

(require 'package)

(add-to-list 'package-archives 
    '("marmalade" .
      "http://marmalade-repo.org/packages/"))

(package-initialize)

(require 'clojure-mode)

(require 'nrepl)

nrepl と clojure-mode をM-x package-list-packagesそれぞれのエントリを実行およびインストールしてインストールすると、nrepl を使用できるようになります。

カスタム .emacs を一度に 1 つの論理ユニットに追加し直すと、競合がどこにあったかを突き止めて解消できるはずです。スライム/スワンクに関連するものを疑ってください。

于 2013-08-13T20:44:05.417 に答える