【问题标题】:hiccup form-helper with compojure打嗝表单助手与 compojure
【发布时间】:2013-03-06 09:21:55
【问题描述】:

异常:线程“主”java.io.FileNotFoundException 中的异常:无法在类路径上找到 hiccup/form_helpers__init.class 或 hiccup/form_helpers.clj:

我正在尝试启动并运行一个玩具组合应用程序。最初的应用来自 CloudBees 和他们的 Clojure/Compojure 的 ClickStart 应用。我正在尝试使用打嗝 form_helpers 添加一个简单的表单(它不会保留任何东西),但我得到了一个 ClassNotFound 异常。这是我所做的:

project.clj:

(defproject mywebapp "0.1.0-SNAPSHOT"
:description "FIXME: write description"
:url "http://example.com/FIXME"
:dependencies [[org.clojure/clojure "1.4.0"]
             [compojure "1.1.1"]
             [hiccup "1.0.1"]]
:plugins [[lein-ring "0.7.3"]]
:ring {:handler mywebapp.routes/app}
:profiles
{:dev {:dependencies [[ring-mock "0.1.3"]]}})

views.clj:

(ns mywebapp.views
(:use [hiccup core page]
    [hiccup form-helpers :only [form-to label text-area submit-button]]))
...
(defn shout-form []
[:div {:id "shout-form" }
 (form-to [:post "/form"]
        (label "shout" "What do you want to SHOUT?")
        [:br]
        (text-area "shout")
        [:br]
        (submit-button "SHOUT!"))])
...

【问题讨论】:

    标签: clojure compojure hiccup


    【解决方案1】:

    啊,看来我刚刚遇到了一个打嗝形式的旧示例。 form_helpers 来自以前的版本。

    如果我从这里更改我的 views.clj 文件:

    (:use [hiccup form-helpers])
    

    看起来像这样:

    (:use [hiccup form])
    

    (虽然我没有测试过,但大概这会起作用):

    (:use [hiccup form :only [form-to label text-area submit-button]])
    

    我不再收到错误消息了。

    澄清一下:这个包以前叫做“form_helpers”,现在简称为“form”。

    【讨论】:

    • 我不明白为什么更改可以解决问题?你能详细说明一下吗?
    • 查看我的编辑 - 抱歉我不清楚。 (没想到有人注意到我的问题/答案)
    • 现在好多了。非常感谢!您能否也将例外添加到问题中,以便它包含所有信息?这将使问题和答案完整。
    • 我没有确切的例外了。这只是一个 ClassNotFound 异常 - 有点像您的代码期望依赖项位于您的类路径中但没有找到它。
    • 我明白了。使用异常的堆栈跟踪,问题和答案会更完整,也许 Google 搜索会更频繁。
    猜你喜欢
    • 2011-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多