2024 年 Clojure 状况调查!中分享您的想法。

欢迎!有关本站如何运作的更多信息,请参阅关于页面。

0
ClojureScript
:libs 编译选项不起作用。无论指定的是目录还是特定文件。如果尝试将一个 JavaScript 类(用 `goog.provide` 正确命名空间)导入 ClojureScript,则编译失败并显示 "没有这样的命名空间"。如果在 ClojureScript 中未引用库代码,则可以编译,且输出目录中不包含库的 JavaScript 文件。

编译选项

(cljs.closure/build
    "src/main/clojurescript"
    {:main 'example.core
     :libs ["/src/main/javascript/"]
     :optimizations :none
     :output-dir "js"
     :output-to "js/main.js"
     :source-map true
     :asset-path "/js"
     })


JavaScript 文件

goog.provide("test.Test");

test.Test = function(x) {
  this.x = x;
};

5 答案

0

评论由:mfikes

嗨 Dominykas,这是否是故意使用绝对路径?我认为意图应该是不要前导 {{/}}。

0

评论由:dmos

我在发布时犯了这种错误。在我的配置中,路径相对于项目根目录。

0

评论由:dnolen

据我所知,很多人依赖于这项功能。请提供完整的最小示例,否则这个问题将被关闭。所有源都应该包含在票据或评论线程中,不要使用外部链接。谢谢。

0

评论由:dmos

无法重现。期待得到提示。在这里我感到非常困惑。

0
参考:https://clojure.atlassian.net/browse/CLJS-1559(由 alex+import 提出)
...