Heroku 全新Luminus应用程序出现错误:无法找到或加载主类clojure.main
我刚刚通过运行以下命令创建了一个Luminus应用程序:Heroku 全新Luminus应用程序出现错误:无法找到或加载主类clojure.main,heroku,clojure,procfile,luminus,Heroku,Clojure,Procfile,Luminus,我刚刚通过运行以下命令创建了一个Luminus应用程序: lein new luminus foobar 当我试着和foreman一起这样做时: foreman start 按照文档描述的方式,我得到了以下错误: Error: Could not find or load main class clojure.main 这也是我从Heroku那里得到的错误。模板创建的Procfile包含以下内容: web: java $JVM_OPTS -cp target/foobar.jar cloj
lein new luminus foobar
当我试着和foreman一起这样做时:
foreman start
按照文档描述的方式,我得到了以下错误:
Error: Could not find or load main class clojure.main
这也是我从Heroku那里得到的错误。模板创建的Procfile包含以下内容:
web: java $JVM_OPTS -cp target/foobar.jar clojure.main -m foobar.core
发生了什么,我该如何修复它?我的最佳猜测是,您需要使用命令
lein uberjar
构建项目。这一顺序起作用:
$ lein new luminus foobar
Retrieving ...
Generating a Luminus project.
$ cd foobar
$ lein uberjar
Retrieving ...
Compiling foobar.session
Compiling foobar.layout
Compiling foobar.handler
Compiling foobar.routes.home
Compiling foobar.core
Compiling foobar.middleware
Created /home/ba/foobar/target/foobar-0.1.0-SNAPSHOT.jar
Created /home/ba/foobar/target/foobar.jar
$ cat Procfile
web: java $JVM_OPTS -cp target/foobar.jar clojure.main -m foobar.core
$ java $JVM_OPTS -cp target/foobar.jar clojure.main -m foobar.core
2015-Jun-22 06:30:42 -0400 ba INFO [foobar.handler] -
-=[ foobar started successfully nil ]=-
2015-06-22 06:30:42.998:INFO:oejs.Server:jetty-7.x.y-SNAPSHOT
2015-06-22 06:30:43.028:INFO:oejs.AbstractConnector:Started SelectChannelConnector@0.0.0.0:3000
关于Luminus和Procfile, 看 上游已修复,但您可以通过更改以下文件在应用程序中修复:
web: java $JVM_OPTS -cp target/foobar.jar clojure.main -m foobar.core
致:
web: java $JVM_OPTS -cp target/uberjar/foobar.jar clojure.main -m foobar.core