首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >独立的clojure应用程序

独立的clojure应用程序
EN

Stack Overflow用户
提问于 2011-07-29 22:02:25
回答 3查看 10.5K关注 0票数 18

我是clojure的初学者,昨天才开始使用。

我认为创建独立应用程序的一个简单方法是使用leiningen lein new foo

我试图用leiningen创建一个hello world测试项目。我向project.clj添加了:main和:aot指令,向core.clj文件添加了:gen-class,并尝试了lein run,但我得到了有关未找到类定义的错误。

代码语言:javascript
复制
Exception in thread "main" java.lang.NoClassDefFoundError: 
Caused by: java.lang.ClassNotFoundException: 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)

core.clj文件

代码语言:javascript
复制
(ns test.core
  (:gen-class))
(defn -main [& args] (println "Hello main"))

和project.clj文件

代码语言:javascript
复制
(defproject test "1.0.0-SNAPSHOT"
  :description "FIXME: write description"
  :main test.core
  :aot [test.core]
  :dependencies [[org.clojure/clojure "1.2.1"]])

编辑:经过进一步的测试,似乎将项目复制到了我的桌面上,我认为这表明我笔记本电脑上的环境被以某种方式借用了,但我不知道是怎么回事。

桌面环境是repositories的clojure和AUR的leiningen。在笔记本电脑上,clojure来自clojure.org,leining来自github。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-08-01 22:09:46

我想通了。我从git买了最新的leiningen,不知何故,它被改写了。我检查了1.6.1标签并运行了self-install,现在它可以工作了。

票数 1
EN

Stack Overflow用户

发布于 2011-07-30 03:15:37

我错过了,你给你的项目命名为test,你不能这样做,把名字改成其他的就行了。

票数 0
EN

Stack Overflow用户

发布于 2011-07-30 02:36:05

你如上所说

代码语言:javascript
复制
lein new foo

你的意思是

代码语言:javascript
复制
lein new test
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6874338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档