嗨,我是Clojure的新手,正在跟随着这个教程制作Clojure API。它使用了IntelliJ的Cursive插件,但我使用的是VS Code中的Calva。
这是我项目的结构
.
├── deps.edn
├── resources
│ └── config.edn
└── src
└── clojure_api
├── config.clj
└── core.clj
我的<code>config.clj</code>文件内容
(ns clojure-api.config
(:require [aero.core :as aero]
[clojure.java.io :as io]))
(defn read-config []
(-> "config.edn"
(io/resource)
(aero/read-config)))
我将我的<code>deps.edn</code>文件更改为添加路径<code>src</code> & <code>resources</code>,如下所示
{:deps {aero/aero {:mvn/version "1.1.6"}} :path ["resources" "src"]}
同时保持<code>config.edn</code>文件为空映射:<code>{</code>}. 然而,我无法从<code>config.clj</code>中的<code>read-config</code>函数中读取配置文件。它在Calva repl中给出了这个错误
; Execution error (IllegalArgumentException) at aero.core/read-config-into-tagged-literal (core.cljc:194).
; Cannot open <nil> as a Reader.
教程中解决了这个错误,在Cursive中通过刷新项目结构。我在Calva中似乎找不到任何这样的命令。我如何在Calva中更新/刷新我的项目结构,以便<code>deps.edn</code>的变更反映在repl中?
我已经尝试重新启动repl,重新打开VS Code中的文件夹,摇晃<code>resources</code>目录,但都无济于事。
我在谷歌上搜索后也找不到与此问题相关的答案,所以任何帮助都将感激不尽。