ho questa funzione in uno spazio dei nomi che non/importare richiede/utilizzare qualsiasi altro pacchetto:Come disambiguare in Clojure
(defn crash [msg]
(throw (Throwable. msg)))
Cursive (l'idea IntelliJ IDE Plugin) mette in evidenza Throwable
e mi dà il messaggio Cannot disambiguate overloads of Throwable
. Ottengo lo stesso messaggio con Exception
e Error
.
Non capisco la fonte di questo messaggio - Dubito che queste classi Java siano definite in altri file jar diversi da quelli in linguaggio Java. Tutto ciò che posso per far sparire questo messaggio?
Questi sono nella project.clj
:
:dependencies [[org.clojure/clojure "1.6.0"]
[net.mikera/imagez "0.8.0"]
[org.clojure/math.numeric-tower "0.0.4"]]
Sia la diagnosi sia la soluzione sono corrette qui - probabilmente dovrei rendere questo messaggio più amichevole. Cursive tenta di avvisare ogni volta che interop richiederà la riflessione usando la stessa logica del compilatore. – Colin
@Colin puoi elencare i sovraccarichi candidati? – cgrand
Sì, l'ho provato, ma i tooltip di tanto in tanto sono diventati estremamente grandi. Ci proverò di nuovo e vedrò se riesco a risolvere il problema. – Colin