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

欢迎!请查看关于页面,了解更多关于它是如何工作的信息。

0
编译器

如果我创建一个带有两个方法的类(链接:https://github.com/MichaelBlume/resolve-fail/blob/master/src/java/resolve_fail/Thing.java 文本:a class),其中一个方法接受(String, String),另一个接受(String, Number),然后编写一个函数

(defn foo [x ^String y] (Thing/hello x y))

很明显,我尝试调用第一个方法,而不是第二个。但在lein检查中,Clojure输出

反射警告,resolve_fail/core.clj:6:3 - resolve_fail.Thing上的静态方法hello的调用无法解析(参数类型:未知,java.lang.String)。

除非我也类型提示x。

2 答案

0

由:bronsa评论

我在为tools.analyzer工作并破解reflector时无数次看到这个问题,发现似乎没有方法可以使这样的事情“工作”而不破坏其他情况

0
参考:https://clojure.atlassian.net/browse/CLJ-1687 (由michaelblume报告)
...