【发布时间】:2011-04-10 07:03:25
【问题描述】:
我在我的项目上运行了lein uberjar,它创建了相应的 jar 文件。当我运行 jar 时,会抛出一个 ClassNotFoundException: explodingdots.core。我指定explodingdot.core 作为我的主要课程。我解压了jar文件,对应的目录下确实没有core.class。我忘记了什么?
我在src/explodingdots/core.clj中有以下代码
(ns explodingdots.core
(:import (java.awt Color Dimension Graphics2D AlphaComposite RenderingHints)
(java.awt.event ActionListener MouseAdapter WindowAdapter)
(javax.swing Timer JPanel JFrame))
(:gen-class))
[ ... ]
(defn -init[] 爆炸点)
(定义-main[_]
(让 [ed(新的 explodingdots.core)]
(.init 编辑)))
我project.clj的内容是:
(defproject explodingdots "0.1"
: 依赖 [[org.clojure/clojure "1.2.0"]
[org.clojure/clojure-contrib "1.2.0"]]
:main explodingdots.core)
注意:我使用的是 leiningen 1.3.1
【问题讨论】:
-
尝试将选项 :main true :prefix "-" 添加到 gen-class 表单中。
-
我很确定他不应该这样做。
-
事实上,我通过removing
:main true修复了一个看起来非常相似的问题