首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用"lein“正确创建uberjar?

如何使用"lein“正确创建uberjar?
EN

Stack Overflow用户
提问于 2016-07-20 03:38:37
回答 1查看 6K关注 0票数 3

如果我使用lein run,这个项目是没有问题的。

但是,当我在jave -jar blog.jar之后使用lein uberjar时,会出现异常。

代码语言:javascript
复制
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文件

代码语言:javascript
复制
(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 {}})

也许它找不到“数据库-url”的钥匙?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-07-20 03:43:27

直接使用java时,不提供通过project.clj中的环境设置提供的数据。确保应用程序可见的环境设置提供所需的凭据或连接信息是您的责任。

它可能看起来像:

代码语言:javascript
复制
DATABASE_URL="jdbc...." java -jar my-project-standalone.jar
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38471910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档