我有一个基本的Chestnut项目文件夹,src/cljs
文件夹设置如下:
cljweb
- algorithms
- gen-prob.cljs
- core.cljs
- webpage.cljs
在gen-prob.cljs
中,我有这个命名空间:
(ns cljweb.algorithms.gen-prob)
在webpage.cljs
中,我需要gen-prob.cljs
这样:
(ns cljweb.webpage
(:require [cljweb.algorithms.gen-prob :as prob]))
这一切似乎都是正确的,但是当我将它编译为Heroku(git push heroku master
)时,我收到此错误:
remote: SEVERE: /tmp/build_c25e7d304d366857019ddcc3f177f680/target/cljweb/webpage.js:7:
ERROR - required "cljweb.algorithms.gen_prob" namespace never provided
remote: goog.require('cljweb.algorithms.gen_prob');
remote: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
当我打开Heroku应用程序(heroku open
)时,没有显示任何内容,我收到错误:
Uncaught ReferenceError: cljweb is not defined
这是Heroku网站:
murmuring-brook-22851.herokuapp.com
您可以使用以下方法克隆它:
$ heroku git:clone -a murmuring-brook-22851
将整个文件夹重命名为cljweb
。
答案 0 :(得分:1)
命名空间名称中的破折号需要在文件名中用下划线替换。您需要将gen-prob.cljs
文件名更改为gen_prob.cljs
,如错误消息所示:
必需" cljweb.algorithms.gen _ 概率"命名空间从未提供