Java 版本
openjdk 18.0.2-ea 2022-07-19
OpenJDK Runtime Environment (build 18.0.2-ea+9-Ubuntu-222.04)
OpenJDK 64-Bit Server VM (build 18.0.2-ea+9-Ubuntu-222.04, mixed mode, sharing)
但是当我在我文本编辑器中启动 nREPL,它说
Starting nREPL server...
/usr/lib/jvm/java-11-openjdk-amd64/bin/java ...
依赖项
:dependencies [[org.clojure/clojure "1.11.1"]
[com.github.seancorfield/next.jdbc "1.3.834"]
[org.postgresql/postgresql "42.5.0"]
[com.layerware/hugsql "0.5.3"]]
代码
(def db
{:classname "org.postgresql.Driver"
:subprotocol "postgresql"
:subname "reporting"
:user "admin"
:password "admin"})
(defn add-user-transaction [users]
(jdbc/with-transaction [t-conn db]
(if-not (find-user t-conn {:id (:id users)})
(add-user! t-conn users))))
在该配置下,一切工作正常,但只有当我评估
(add-user-transaction {:id "cheryl"
:pass "Cheryl"})
出现错误。
这个错误曾在Clojure:执行错误(SQLException)在java.sql.DriverManager.getConnection(DriverManager.java:702)中讨论,并且已经得到了回答,但那里的唯一答案是用:deps
或deps.edn
(据我所知,这是Maven仓库),那么leiningen呢?或者是我漏掉了一些关于leiningen和Maven的信息?
我甚至重启了我的电脑、文本编辑器和nREPL,但什么都没变。