欢迎!请参阅 关于 页面,了解如何使用本网站的更多信息。
我认为以下行可能在 Windows 上引起问题 https://github.com/clojure/clojurescript/blob/master/src/main/clojure/cljs/repl.cljc#L713
例如,对于文件参数 "src\duct3\client.cljs"
(str "file://" (.getAbsolutePath file))
在 Windows 上评估为"file://C:\Projects\Playground\duct3\src\duct3\client.cljs"
这并不是合法的文件 URL(《https://en.wikipedia.org/wiki/File_URI_scheme#Windows》),
最终结果是:java.net.UnknownHostException(Java 将该 URL视为 FTP 地址)。
评论由:vojko 提供
至相关 行的 永久链接 https://github.com/clojure/clojurescript/blob/98656d305e6447c62e36849ee615532d53211fdd/src/main/clojure/cljs/repl.cljc#L736
为 Windows 平台添加了不同的前缀。
已附上补丁。
评论由:admin 添加
请勿标记问题已解决 - 只有像dnolen或mfikes这样的项目管理员应该这么做。
评论由:mfikes 添加
我想知道{{file://}}字符串构造是否必要。
如果不必要,那么一个更简单的补丁可能涉及到将表达式替换为
(ana/analyze-file (str "file://" (.getAbsolutePath file)) opts)
替换为
(ana/analyze-file file opts)
我已经按照您说的尝试了WO "file://",它运行得非常完美。谢谢!
嗨David,尽管你标记了这个问题,但我认为我在上面可能提出了一种更干净的方法给Vojimir,他已经试过,并且对他有效。我想我们会对Vojimir的更干净的补丁感兴趣。
嗨Mike,我已经附上了一个新的补丁,使用了您建议的方法。
CLJS-2155-2.patch通过CI测试(/)
CLJS-2155-2.patch已添加到补丁摊位(i)