Come importare l'intero pacchetto ma ne escludo alcuni in Clojure?
-
05-07-2019 - |
Domanda
Voglio importare l'intero pacchetto weka.classifiers.functions ma non voglio importare la classe RBFNetwork.
(ns com.wekatest
(:import (weka.classifiers Classifier Evaluation)
(weka.classifiers.functions)
(weka.core Attribute FastVector Instance Instances)))
Modifica: (weka.classifiers.functions) non importa l'intero pacchetto. Come posso farlo?
Soluzione
Clojure non fornisce un modo per importare ogni classe in un pacchetto Java senza specificare esplicitamente ogni classe. Vedi qui per la risposta di Rich Hickey essenzialmente alla stessa domanda: http://groups.google com / gruppo / clojure / browse_thread / filetto / fa00a0ff4c264f9a
Questo non ti impedisce di scrivere codice che aggiungerebbe questa funzionalità, ma Rich menziona anche perché questo potrebbe essere difficile (i pacchetti Java non sono enumerabili, quindi dovresti percorrere il classpath per sapere quali classi sono all'interno di ogni pacchetto) .