超初心者の質問です。私は (良い) 本Programming Clojureに従っています。第 5 章は、小さな Snake ゲームのコーディングについてです。ユーティリティ コードが提供されているので、それに従って新しいLeiningenプロジェクトを開始することにしました ( lein new app snake
)。私のsrc/snake/core.clj
中では、作者が書いた:use
名前のファイルが欲しいです。import_static.clj
ファイルをsrc/snake
にsrc/snake/core.clj
コピーし、サンプルから import 行をコピーしました(:use snake.import-static)
。しかし、REPL でファイル全体を評価すると、「FileNotFoundException Could not find import_static__init.class または import_static.clj on classpath」というエラーが表示されます。
project.clj
ファイルとエディターの REPL (SublimeText + プラグイン SublimeREPL) の両方で Clojure 1.5.1 を使用します。ディレクトリ構造:
src/
snake/
core.clj
import_static.clj
上core.clj
:
(ns snake.core
(:import (java.awt Color Dimension)
(javax.swing JPanel JFrame Timer JOptionPane)
(java.awt.event ActionListener KeyListener))
(:gen-class)
(:use snake.import-static))
上import_static.clj
:
(ns ^{:author "Stuart Sierra",
:doc "Import static Java methods/fields into Clojure"}
snake.import-static
(:use clojure.set))
呼び出しと名前空間宣言のsnake
両方からを削除しようとしましたが、うまくいきませんでした。:use
手伝って頂けますか ?私は JVM の知識がないことに注意してください。それは、クラスパスまたは私のエディターである可能性があります。