如果我使用lein run
项目没问题。
但是当我在jave -jar blog.jar
之后使用lein uberjar
时会发生异常。
16-Jul-20 11:28:05 DESKTOP-C3SC9AR INFO [slf4j-timbre.adapter] - >> starting.. *db*
Exception in thread "main" java.lang.RuntimeException: could not start [*db*] due to
.....
Caused by: java.lang.Exception: :jdbc-url, :datasource, or :datasource-
和我的project.clj文件
(defproject blog "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:dependencies ....
:min-lein-version "2.0.0"
:uberjar-name "blog.jar"
:jvm-opts ["-server"]
:main blog.core
:migratus {:store :database}
:plugins [[lein-environ "1.0.1"]
[migratus-lein "0.2.0"]]
:profiles
{:uberjar {:omit-source true
:env {:production true}
:aot :all
:source-paths ["env/prod/clj"]}
:dev [:project/dev :profiles/dev]
:test [:project/test :profiles/test]
:project/dev ...
:project/test ...
:profiles/dev {:env {:database-url "jdbc:postgresql://localhost/blog?user=postgres&password=root"}}
:profiles/test {}})
也许它无法找到" database-url"的密钥?
答案 0 :(得分:2)
直接使用java时,不提供通过project.clj中的环境设置提供的数据。您有责任确保应用程序可见的环境设置提供所需的任何凭据或连接信息。
它可能看起来像:
DATABASE_URL="jdbc...." java -jar my-project-standalone.jar