显示在Noir错误页面上的错误:java.io.FileNotFoundException: Could not locate boundaries/lat_long__init.class or boundaries/lat_long.clj on class path
需要它的代码:
(ns boundaries.views.boundary
(:use noir.core
hiccup.core
hiccup.page-helpers)
(:require
[boundaries.lat-long :as lat-long]
[noir.response :as resp]))为什么它要查找lat_long而不是指定的lat-long?boundaries/lat-long.clj以及相应的boundaries.lat-long名称空间都存在。
发布于 2012-06-26 10:06:53
JVM不允许在类名中使用-,因此Clojure编译器将它们转换为_的。
问题很可能出在project.clj依赖项上。
诊断此类问题时:
lein deps中提供的命名空间?
发布于 2012-06-26 10:43:38
您需要将边界/lat-lat.clj重命名为边界/lat_lat.clj。
请注意,您不必更改名称空间名称。clojure约定对函数和名称空间名称使用"-“。
来自https://stackoverflow.com/a/4451693/151650的Stuart Sierra response说:“这是Java互操作性的一个必要的变通方法。”
https://stackoverflow.com/questions/11199873
复制相似问题