当前位置: 首页 > 知识库问答 >
问题:

解放者入门

程冥夜
2023-03-14

我对clojure和liberator是新手。

我试图开始与解放者,但我被困在以下错误。

以下是启动Web服务器并定义路由代码

(ns game-of-life.core
  (:require
   [ring.util.response :as resp]
   [compojure.route :as route]
   [ring.adapter.jetty :as jetty])
  (:use
   [ring.middleware.multipart-params :only [wrap-multipart-params]]
   [ring.util.response :only [header]]
   [compojure.core :only [context ANY routes defroutes]]
   [compojure.handler :only [api]]))

  (defn assemble-routes []
    (->
     (routes
        (ANY "/" [] (resp/redirect "/index.html"))

        (route/resources "/"))))

  (def handler
    (-> (assemble-routes))

  (defn start [options]
    (jetty/run-jetty #'handler (assoc options :join? false)))

  (defn -main
    ([port]
       (start {:port (Integer/parseInt port)}))
    ([]
       (-main "3000")))

当我运行lein ring server时,我得到一个java.lang.NullPointerExc0019,带有以下stackTrace:

重新加载clj:18响。中间件。重新加载/换行重新加载[fn]堆栈跟踪。clj:17环。中间件。stacktrace/包装stacktrace日志[fn]stacktrace。clj:80响。中间件。stacktrace/包裹stacktrace web[fn]码头。clj:18响。适配器。jetty/代理处理程序[fn](未知源)环。适配器。码头。代理$org。日食码头。服务器处理程序。AbstractHandler$0。把手,把手。java:116 org。日食码头。服务器处理程序。手袋。处理服务器。爪哇:363 org。日食码头。服务器服务器处理抽象HttpConnection。java:483 org。日食码头。服务器抽象HttpConnection。HandlerRequest AbstractHttpConnection。java:920 org。日食码头。服务器抽象HttpConnection。headerComplete AbstractHttpConnection。java:982 org。日食码头。服务器AbstractHttpConnection$RequestHandler。headerComplete HttpParser。java:635org。日食码头。http。HttpParser。解析下一个HttpParser。java:235 org。日食码头。http。HttpParser。解析可用的AsyncHttpConnection。java:82 org。日食码头。服务器异步HttpConnection。句柄SelectChannelEndPoint。爪哇:628 org。日食码头。木卫一。尼奥。选择ChannelEndpoint。句柄SelectChannelEndPoint。java:52 org。日食码头。木卫一。尼奥。选择ChannelEndpoint$1。运行QueuedThreadPool。java:608 org。日食码头。util。线QueuedThreadPool。运行作业队列线程池。java:543 org。日食码头。util。线QueuedThreadPool$3。运行线程。爪哇:744爪哇。朗。丝线。跑

共有2个答案

国阳
2023-03-14

您可以尝试像这样更改依赖项吗?这些版本和以下配置完全适合我:(包括重新加载)

(defproject ..........
 :dependencies [[org.clojure/clojure "1.5.1"]
             [liberator "0.11.0"]
             [ring/ring-core "1.1.8"]
             [ring/ring-jetty-adapter "1.1.8"]
             [compojure "1.1.3"]]
 :main game-of-life.core
 :min-lein-version "2.0.0"
 :plugins [[lein-ring "0.8.10"]]
 :ring {:handler game-of-life.core/handler})

另外,处理程序应该是

(def handler
(-> (assemble-routes)))
高英彦
2023-03-14

我认为如果你的处理函数得到请求参数,效果会更好。

 类似资料:
  • 我得到了一个文件来表示图中节点的邻接表,作为我需要解析的文本文件。第一行是节点总数。第二行是node1,以及它所连接的节点列表(无向图)。例如 第1行:该图总共有7个节点。< br >线路2:节点1连接到节点2、节点3。< br >线路3:节点2连接到节点1、节点3、节点4、节点5和节点7。 -1有点没用。 这是我当前的ruby实现。我正试图找到一种方法来设置它 我的节点类有一个邻接节点数组,我可

  • 所以现在我有一个简单的datalist下拉菜单,我想改变它的CSS,以便样式与网站上的其他字段匹配。然而,我是一个网页设计的noob,我有点困惑,因为要完成这个过程。 我有CSS在那里以及imo这将是最容易的内联CSS,但如果有人能指导我通过这将是伟大的感谢!

  • 本文向大家介绍深入理解Android中的建造者模式,包括了深入理解Android中的建造者模式的使用技巧和注意事项,需要的朋友参考一下 前言 在Android开发过程中,我发现很多安卓源代码里应用了设计模式,比较常用的有适配器模式(各种adapter),建造者模式(Alert Dialog的构建)等等。虽然我们对大多数设计模式都有所了解,但是在应用设计模式的这个方面,感觉很多人在这方面有所不足。所

  • 问题内容: 我有一个带有功能的python模块: 有没有办法放入我有评论的命令行解释器?因此,如果我在python中运行以下命令: 我会在下一个评论的范围和上下文中得到我的下一个提示? 问题答案: 插入 届时将进入python调试器 参见此处:http : //docs.python.org/library/pdb.html

  • 本文向大家介绍nginx常用命令放入shell脚本详解,包括了nginx常用命令放入shell脚本详解的使用技巧和注意事项,需要的朋友参考一下 1、创建一个文件夹存放nginx的shell脚本 1)重启nginx的shell脚本 vim reload.sh 2)设置nginx用户对html目录下所有文件读写执行权限的shell脚本 vim setfacl.sh 3)启动nginx进程的shell脚

  • 本文向大家介绍深入理解JS中Number(),parseInt(),parseFloat()三者比较,包括了深入理解JS中Number(),parseInt(),parseFloat()三者比较的使用技巧和注意事项,需要的朋友参考一下 参考阅读: 详解js中Number()、parseInt()和parseFloat()的区别 详解JS转换数值函数Number()、parseInt()、parse