clojure noir项目生成uberjar-NoClassDefFoundError

clojure noir项目生成uberjar-NoClassDefFoundError,clojure,leiningen,noir,Clojure,Leiningen,Noir,按照说明创建一个新项目-我运行了lein uberwar-这会生成一个(可执行)jar-但是它无法找到清单中提到的主类-找不到类文件 应用程序以“lein run”运行 uberjar是否意味着能够以这种方式运行(我希望它能启动一个嵌入式码头?) FYI与之类似,但已经过时(这是一个更新版本的leiningen,其中修复了特定的错误)。诀窍是将gen类添加到server.clj (ns myproject.server…(:gen class)) 例如: 我刚刚使用lein uberjar进行了

按照说明创建一个新项目-我运行了lein uberwar-这会生成一个(可执行)jar-但是它无法找到清单中提到的主类-找不到类文件

应用程序以“lein run”运行

uberjar是否意味着能够以这种方式运行(我希望它能启动一个嵌入式码头?)


FYI与之类似,但已经过时(这是一个更新版本的leiningen,其中修复了特定的错误)。

诀窍是将gen类添加到server.clj

(ns myproject.server…(:gen class))

例如: 我刚刚使用lein uberjar进行了部署,我有以下几点:

在my project.clj中:

:main myproject.server
在my server.clj中:

(ns myproject.server
  (:require [noir.server :as server]
    [myproject.views.common]
    [myproject.views.index])
  (:gen-class))

(server/load-views "src/myproject/views/")

(defn -main [& m]
  (let [mode (keyword (or (first m) :dev))
        port (Integer. (get (System/getenv) "PORT" "8080"))]
    (server/start port {:mode mode
                        :ns 'myproject})))
  • 需要顶部的视图
  • gen类
  • 负荷视图

现在,java-jar myproject standalone.jar可以正常工作。

诀窍是将gen类添加到server.clj

(ns myproject.server…(:gen class))

例如: 我刚刚使用lein uberjar进行了部署,我有以下几点:

在my project.clj中:

:main myproject.server
在my server.clj中:

(ns myproject.server
  (:require [noir.server :as server]
    [myproject.views.common]
    [myproject.views.index])
  (:gen-class))

(server/load-views "src/myproject/views/")

(defn -main [& m]
  (let [mode (keyword (or (first m) :dev))
        port (Integer. (get (System/getenv) "PORT" "8080"))]
    (server/start port {:mode mode
                        :ns 'myproject})))
  • 需要顶部的视图
  • gen类
  • 负荷视图

现在,java-jar myproject standalone.jar可以正常工作。

我在webnoir网站上找不到任何关于“uber”、“war”或“jar”的内容。它只提到安装LeinNoir插件并运行它来创建一个新项目。我在webnoir网站上找不到任何关于“uber”、“war”或“jar”的内容。它只提到安装LeinNoir插件并运行它来创建一个新项目。