我用lein uberjar创建了一个uberjar,我可以通过以下方式在我的机器上运行它(安装了java 1.8):
java -jar my.jar
在我想要部署它的服务器上,出现了一个错误。然而,这里只安装了java 1.5版。以下是错误消息和完整的版本说明:
java -jar my.jar
Exception in thread "main" java.lang.NoClassDefFoundError: clojure.core.protocols$seq_reduce
[...]
java -version
java version "1.5.0"
gij (GNU libgcj) version 4.4.7 20120313 (Red Hat 4.4.7-16)
Copyright (C) 2007 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
您需要升级到Java 1.6。从版本1.6开始,Clojure放弃了对Java 1.5的支持。