requre deps in idea clojure repl,获取 FileNotFoundException
requre deps in idea clojure repl, get FileNotFoundException
我在idea新建了一个Leiningen项目,在project.clj导入了一些deps如下:
deps
并且 deps 似乎是导入的:
external libraries
但是当我尝试 运行 repl,并且需要我之前在 project.clj 中导入的一些 deps 时,发生了 FileNotFoundException:
FileNotFoundException
Starting nREPL server...
"E:\Program Files\Java\jdk-11.0.8\bin\java.exe" -Dfile.encoding=GBK -XX:-OmitStackTraceInFastThrow -Dclojure.compile.path=E:\idea_projects\clojure_test_second\target\classes -Dclojure_test_second.version=0.1.0-SNAPSHOT -Dclojure.debug=false "-javaagent:D:\Program Files\JetBrains\IntelliJ IDEA 2021.1.3\lib\idea_rt.jar=50688:D:\Program Files\JetBrains\IntelliJ IDEA 2021.1.3\bin" -classpath E:\idea_projects\clojure_test_second\test;E:\idea_projects\clojure_test_second\src;E:\idea_projects\clojure_test_second\dev-resources;E:\idea_projects\clojure_test_second\resources;E:\idea_projects\clojure_test_second\target\classes;C:\Users\asus\.m2\repository\org\clojure\clojure.10.1\clojure-1.10.1.jar;C:\Users\asus\.m2\repository\org\clojure\spec.alpha[=10=].2.176\spec.alpha-0.2.176.jar;C:\Users\asus\.m2\repository\org\clojure\core.specs.alpha[=10=].2.44\core.specs.alpha-0.2.44.jar;C:\Users\asus\.m2\repository\hiccup\hiccup.0.5\hiccup-1.0.5.jar;C:\Users\asus\.m2\repository\clojure\jdbc\clojure.jdbc[=10=].4.0\clojure.jdbc-0.4.0.jar;C:\Users\asus\.m2\repository\com\h2database\h2.4.193\h2-1.4.193.jar;C:\Users\asus\.m2\repository\nrepl\nrepl[=10=].6.0\nrepl-0.6.0.jar;C:\Users\asus\.m2\repository\clojure-complete\clojure-complete[=10=].2.5\clojure-complete-0.2.5.jar clojure.main -i C:\Users\asus\AppData\Local\Temp\form-init14732922726375964945.clj
Connecting to local nREPL server...
Clojure 1.10.1
nREPL server started on port 50817 on host 127.0.0.1 - nrepl://127.0.0.1:50817
(require '[clojure.java.jdbc :as jdbc])
Execution error (FileNotFoundException) at clojure-test-second.core/eval1555 (form-init14732922726375964945.clj:1).
Could not locate clojure/java/jdbc__init.class, clojure/java/jdbc.clj or clojure/java/jdbc.cljc on classpath.
jdk版本为11,idea版本为2021.1.3.
找了很久的解决方案,没有解决。我是 clojure 的小白。
谢谢。
你必须
- 在您的 leiningen 项目文件夹的 project.clj 文件中添加
[org.clojure/java.jdbc "0.7.12"]
。在 :dependencies [ <add into this list> [org.clojure/java.jdbc "0.7.12"]]
. 下
- 然后从 leiningen 项目文件夹的内部文件夹中执行
$ lein deps
,以确保安装该依赖项。
- 然后,如果您在项目文件夹内打开的 emacs 中执行
M-x cider-jack-in
,则可以执行 require
命令。或者你只是从那里做 $ lein repl
然后你可以做你的 (require '[clojure.java.jdbc :as j])
- 瞧!
来自Common Lisp,我也和你一样迷茫。
Clojure 需要 Leiningen 或 Boot 才能正常运行。
每当您必须在新机器上安装 Clojure 时,请先安装 Leiningen,因为您也可以使用 Leiningen 安装 Cloure。
使用 Boot,您甚至可以创建使用 Clojure 的独立 scripts/executives。
而且还有 Leiningen see here.
安装和使用 Boot
我觉得你想用repl的方式——更自由——
更适合 Boot:
# install boot e.g. by (for linux)
$ sudo bash -c "cd /usr/local/bin && curl -fsSLo boot https://github.com/boot-clj/boot-bin/releases/download/latest/boot.sh && chmod 755 boot"
# upgrade!
$ boot -u
# create your project folders and move into toplevel
mkdir -p my-project/src
cd my-project
# then open repl
$ boot repl
;; within the repl:
;; declare resource-paths and dependencies
(set-env! :resource-paths #{"src"}
:dependencies '[[org.clojure/java.jdbc "0.7.12"]])
;; create a minimal project declaration
(task-options!
pom {:project 'my-project
:version "0.1.0"}
jar {:manifest {"Foo" "bar"}})
;; build the minimal project (to install the dependencies!)
(deftask build
"Build my project."
[]
(comp (pom) (jar) (install)))
;; call build
(build)
;; now, in the repl, you can do:
(require '[org.clojure/java.jdbc :as j])
启动更加动态 - 因为您可以从 repl 引入依赖项并构建。
我在idea新建了一个Leiningen项目,在project.clj导入了一些deps如下: deps
并且 deps 似乎是导入的: external libraries
但是当我尝试 运行 repl,并且需要我之前在 project.clj 中导入的一些 deps 时,发生了 FileNotFoundException: FileNotFoundException
Starting nREPL server...
"E:\Program Files\Java\jdk-11.0.8\bin\java.exe" -Dfile.encoding=GBK -XX:-OmitStackTraceInFastThrow -Dclojure.compile.path=E:\idea_projects\clojure_test_second\target\classes -Dclojure_test_second.version=0.1.0-SNAPSHOT -Dclojure.debug=false "-javaagent:D:\Program Files\JetBrains\IntelliJ IDEA 2021.1.3\lib\idea_rt.jar=50688:D:\Program Files\JetBrains\IntelliJ IDEA 2021.1.3\bin" -classpath E:\idea_projects\clojure_test_second\test;E:\idea_projects\clojure_test_second\src;E:\idea_projects\clojure_test_second\dev-resources;E:\idea_projects\clojure_test_second\resources;E:\idea_projects\clojure_test_second\target\classes;C:\Users\asus\.m2\repository\org\clojure\clojure.10.1\clojure-1.10.1.jar;C:\Users\asus\.m2\repository\org\clojure\spec.alpha[=10=].2.176\spec.alpha-0.2.176.jar;C:\Users\asus\.m2\repository\org\clojure\core.specs.alpha[=10=].2.44\core.specs.alpha-0.2.44.jar;C:\Users\asus\.m2\repository\hiccup\hiccup.0.5\hiccup-1.0.5.jar;C:\Users\asus\.m2\repository\clojure\jdbc\clojure.jdbc[=10=].4.0\clojure.jdbc-0.4.0.jar;C:\Users\asus\.m2\repository\com\h2database\h2.4.193\h2-1.4.193.jar;C:\Users\asus\.m2\repository\nrepl\nrepl[=10=].6.0\nrepl-0.6.0.jar;C:\Users\asus\.m2\repository\clojure-complete\clojure-complete[=10=].2.5\clojure-complete-0.2.5.jar clojure.main -i C:\Users\asus\AppData\Local\Temp\form-init14732922726375964945.clj
Connecting to local nREPL server...
Clojure 1.10.1
nREPL server started on port 50817 on host 127.0.0.1 - nrepl://127.0.0.1:50817
(require '[clojure.java.jdbc :as jdbc])
Execution error (FileNotFoundException) at clojure-test-second.core/eval1555 (form-init14732922726375964945.clj:1).
Could not locate clojure/java/jdbc__init.class, clojure/java/jdbc.clj or clojure/java/jdbc.cljc on classpath.
jdk版本为11,idea版本为2021.1.3.
找了很久的解决方案,没有解决。我是 clojure 的小白。
谢谢。
你必须
- 在您的 leiningen 项目文件夹的 project.clj 文件中添加
[org.clojure/java.jdbc "0.7.12"]
。在:dependencies [ <add into this list> [org.clojure/java.jdbc "0.7.12"]]
. 下
- 然后从 leiningen 项目文件夹的内部文件夹中执行
$ lein deps
,以确保安装该依赖项。 - 然后,如果您在项目文件夹内打开的 emacs 中执行
M-x cider-jack-in
,则可以执行require
命令。或者你只是从那里做$ lein repl
然后你可以做你的(require '[clojure.java.jdbc :as j])
- 瞧!
来自Common Lisp,我也和你一样迷茫。 Clojure 需要 Leiningen 或 Boot 才能正常运行。
每当您必须在新机器上安装 Clojure 时,请先安装 Leiningen,因为您也可以使用 Leiningen 安装 Cloure。
使用 Boot,您甚至可以创建使用 Clojure 的独立 scripts/executives。 而且还有 Leiningen see here.
安装和使用 Boot
我觉得你想用repl的方式——更自由—— 更适合 Boot:
# install boot e.g. by (for linux)
$ sudo bash -c "cd /usr/local/bin && curl -fsSLo boot https://github.com/boot-clj/boot-bin/releases/download/latest/boot.sh && chmod 755 boot"
# upgrade!
$ boot -u
# create your project folders and move into toplevel
mkdir -p my-project/src
cd my-project
# then open repl
$ boot repl
;; within the repl:
;; declare resource-paths and dependencies
(set-env! :resource-paths #{"src"}
:dependencies '[[org.clojure/java.jdbc "0.7.12"]])
;; create a minimal project declaration
(task-options!
pom {:project 'my-project
:version "0.1.0"}
jar {:manifest {"Foo" "bar"}})
;; build the minimal project (to install the dependencies!)
(deftask build
"Build my project."
[]
(comp (pom) (jar) (install)))
;; call build
(build)
;; now, in the repl, you can do:
(require '[org.clojure/java.jdbc :as j])
启动更加动态 - 因为您可以从 repl 引入依赖项并构建。