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: Execution error (SQLException) at java.sql.DriverManager.getConnection (DriverManager.java:702) 中已经提出,并已经有了答复,但那个回答中只有使用 :deps
或 deps.edn
(据我所知,这是 Maven 仓库),那么 Leiningen 呢?或者是我错过了关于 Leiningen 和 Maven 的某些信息?
我甚至还重启了我的电脑、文本编辑器和 nREPL,但是没有任何变化。