找不到Clojure Postgresql驱动程序

找不到Clojure Postgresql驱动程序,postgresql,clojure,Postgresql,Clojure,我正处在挫折让你看不到解决方案的时候 我的project.clj :dependencies [[org.clojure/clojure "1.8.0"] [o

我正处在挫折让你看不到解决方案的时候

我的
project.clj

:dependencies [[org.clojure/clojure "1.8.0"]                                                                                                                                                           
               [org.clojure/java.jdbc "0.4.2"]                                                                                                                                                         
               [org.postgresql/postgresql "9.4.1208"]] 
  • 运行
    lein deps
    (一切正常)
  • 运行我的查询:

    (db/查询“postgresql://user:secret@主机“
    [“从表限制1中选择*”)

  • 我得到以下错误:

  • 未处理的java.sql.SQLException 未找到适合的驱动程序
    jdbc:postgresql://host

  • …求你了。有什么想法吗?

    可能需要指定要使用的java驱动程序以及db描述符中的其他参数

    我通常使用类似于:

    (use 'clojure.java.jdbc)
    
    (let [db { :classname "org.postgresql.Driver"
               :subprotocol "postgresql"
               :subname "//192.168.99.100:5432/postgres"
               :user "postgres"
               :password "mysecretpassword"}]
           (query db ["select count(*) from example" ]) )
    
     ; ({:count 6005247})
    

    可能您的db规范错误,我使用postgresql规范:

    postgres://user:password@host:5432/mydb
    

    仅在依赖项中包含库并不能配置与数据库的连接。您必须特别指定,通常在连接映射的
    :classname
    值中指定。