问题标签 [boot-clj]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
33 浏览

clojure - 导出任务的引导项目,这些任务本身使用第三方任务

我正在为一组自定义 boot-clj 任务建模。该项目的结构与bootlaces的结构非常相似。

当它们引用内置任务时,其中定义的任务运行良好,这是必需的[boot.task.built-in :refer :all]。然而,一项任务应该使用来自 boot-cljs 的第三方任务。通过要求它[adzerk.boot-cljs :refer [cljs]]在项目的编译和安装阶段效果很好。

在另一个项目中请求任务时,会出现以下错误:

换句话说:如果此文件中导出的任务之一需要使用该cljs任务,该怎么办?

0 投票
0 回答
163 浏览

file - 如何将特定文件拉入文件集中?

我正在编写一个库,它使用我不拥有的 GitHub 存储库中的文件:

这里是另外两个相关的文件foo

build.boot

src/com/example/foo/core.clj

我想要的是某种add允许我做这样的事情的任务:

我尝试使用 的-R选项sift,但它对我的用例有两个问题:

  1. 比我想要的(vk.xml)更多的文件被拉入文件集中,这会膨胀我的 JAR 的大小
  2. 因为-R只是将目录添加到资源路径集中,它的所有内容都添加到顶层的文件集中,这很容易破坏我自己的资源

本质上,我想要与以下三个命令具有相同效果的东西,但实际上并没有触及resources目录:

换句话说,com.example/fooJAR 应该包含该 XML 文件作为资源,以便当我com.example/foo从另一个项目中使用该资源时应该可以使用该资源:

如何将特定文件(例如来自 Git 子模块)作为资源拉入特定位置的文件集中,而不触及文件集中已有的任何文件?

0 投票
1 回答
125 浏览

clojurescript - 浏览器 repl 中的 pprint 导致 TypeError

有人理解 ClojureScript 浏览器 repl 中的以下行为吗?(由引​​导工具链提供)

看起来,没有对 cljs.pprint/pprint 的引用,但是 repl 知道这个函数的数量。


这也可能有帮助:

0 投票
1 回答
80 浏览

testing - 从 boot-clj 项目中排除测试源以进行生产

我正在开发一个 ClojureScript 库,旨在用于浏览器环境。

所以很明显在开发和测试过程中会有额外的源文件。如何将其与库源分开?

有没有办法将某些源标记为仅用于测试目的,在安装/部署项目时会被省略?

此外,在发布时也不应包含包含一些 HTML 文件(等)的资源文件夹。

0 投票
1 回答
171 浏览

clojure - boot-clj:摆脱“检测到版本冲突”

boot-clj 在启动时显示很多关于版本冲突的警告:它们看起来像这样:

我不太明白为什么有时第一个版本低于另一个版本,有时反之亦然。看起来我无法影响他们中的大多数人。例如在我的项目中我需要clj-timeversion 0.12.0,所以我猜警告来自一个库,它本身需要另一个版本的 clj-time。

有没有办法修复它们,或者我是否总是使用该-q标志来“抑制引导本身的输出”?这可能会阻止显示其他可能更重要的输出吗?

0 投票
0 回答
39 浏览

clojure - 浏览器从错误的 url 获取 cljs 源映射文件

我在从浏览器内部访问 cljs 源映射文件时遇到问题。看起来它正试图从错误的 url 中获取它们。例如:

但它应该是:

main.cljs.edn我的 boot-clj 项目中看起来像这样:

有人知道如何解决这个问题吗?

0 投票
1 回答
178 浏览

clojure - 简单的启动项目不适用于 cljs 和 async

我有一个非常简单的项目。我用 boot 和 cljs 创建了有史以来最简单的项目。它编译成功,我能够在 html 中看到正确的日志。当我添加对异步的基本支持时,我收到了以下消息:

该项目只有以下结构:

index.html 的内容:

核心.cljs

和 build.boot

原始工作项目具有相同的基本结构,除了 core.cljs 文件中通道的 require 和 def 以及 build.boot 中添加的依赖项

0 投票
1 回答
271 浏览

clojure - 如何使用引导运行 http-kit?

使用引导运行时,我无法从 http-kit 服务器获得任何响应。它适用于码头。当我运行boot run它时,它会在一段时间后退出。所以我添加了(boot (wait))哪个不会终止,但服务器似乎没有运行。

boot.clj文件:

0 投票
1 回答
131 浏览

clojure - 浏览器尝试从错误的路径加载 ClojureScript 源映射

我正在使用 Boot 来构建 Clojure(Script) Web 应用程序。浏览器从http://localhost:8080/main.out/calculators/frontend/core.js加载转译后的代码

该文件的最后一行是

我可以使用 URL http://localhost:8080/main.out/calculators/frontend/core.js.map从浏览器加载该地图文件

但是,如果在 Chrome 开发工具的 Sources 面板中搜索相应的 ClojureScript 文件,它会出现错误的 URL(参见main.out/calculators/frontend嵌套本身) http://localhost:8080/main.out/calculators/frontend/main.out /calculators/frontend/core.cljs

加载后,不显示任何代码,并且“(从 core.js 映射的源)”出现在状态栏中。

哪个可能是问题?

0 投票
2 回答
631 浏览

clojure - 如何在不重新启动 repl 的情况下停止码头服务器

假设我有一个简单的 boot-clj 任务,它使用'[pandeiro.boot-http :refer [serve]]. 如果我进行更改并需要重新启动任务,它会抱怨该端口已在使用中。有没有办法杀死码头服务器而不必重新启动repl?