3

我正在尝试使用用于 Clojure 的跷跷板制作一个小窗口。但是,当我尝试使用以下命令创建 JAR 文件时:

lein uberjar

我在 Windows 的命令行上收到以下错误:

Caused by: clojure.lang.Compiler$CompilerException: java.io.FileNotFoundExceptio
n: Could not locate seesaw/core__init.class or seesaw/core.clj on classpath: , 
compiling:(C:\Users\J\Desktop\test\guidemo\project.clj:10:36)

使用 leiningen,我创建了一个新应用程序,并在我的 project.clj 中有以下内容

(defproject guidemo "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:license {:name "Eclipse Public License"
        :url "http://www.eclipse.org/legal/epl-v10.html"}
:dependencies [[org.clojure/clojure "1.6.0"]
             [seesaw "1.4.4"]]
:main ^:skip-aot guidemo.core
:target-path "target/%s"
:profiles {:uberjar {:aot :all}})

(ns guidemo.namespace
(:gen-class)
(:require [seesaw.core :as seesaw]))

和以下在 core.clj 中创建一个简单的窗口(都在我的 guidemo 项目中)

(ns guidemo.core
(:gen-class)
(:require [seesaw.core :as seesaw]))

(def window (seesaw/frame
  :title "First Example"
  :content "hello world"
  :width 200
  :height 50))

(defn -main
  [& args]
(seesaw/show! window))

我的问题是如何在我的课程路径上设置 seesaw/core.clj?我对 leiningen 和使用跷跷板的场景很陌生。我看到的大多数例子都是由daveray 回答的,都与用跷跷板中的例子进行实验有关。我在除此之外的其他项目上运行 lein 操作(lein 帮助,lein 编译)没有问题。

我已经在 daveray 的 github 上下载了 seesaw 的整个 repo。那应该在我的guidemo文件夹中吗?如果是在哪里?

我正在运行 leiningen 2.5.0。在 Java 1.7.0_67 上

感谢您的帮助,在过去的 4 个小时里,我一直在拉头发,设置一切。

4

1 回答 1

2

您的“project.clj”中不需要以下内容

(ns guidemo.namespace
(:gen-class)
(:require [seesaw.core :as seesaw]))
于 2014-11-12T02:19:11.047 回答