2012-04-25 5 views
6

Ich habe erstellt ein lein Projekt, als Aktualisierung der project.clj mit dev-Abhängigkeit von eclipsin Leiningen Finsternis konnte nicht clojure/contrib/duck_streams__init.class oder Clojure/contrib/duck_streams.clj

Ich lief lokalisieren "lein deps"

es heruntergeladen alle Abhängigkeiten

aber in my.m2/Repository-Verzeichnis gibt es keine clojure Verzeichnis. und das verursacht mir

leiningen.eclipse Problem beim Laden: java.io.FileNotFoundException: clojure/contrib/duck_streams__init.class oder Clojure/contrib/duck_streams.clj auf Classpath konnte nicht gefunden werden: (eclipse.clj: 1)

Fehler, wenn ich lief "Lein Hilfe", die mich mit Eclipse zu entwickeln verlässt, weil ich nicht meinen "Lein Eclipse" -Befehl ausführen kann.

Irgendeine Lösung dafür ??? Vielen Dank im Voraus.

meine project.clj unter

(

    defproject for_test "1.0.0-SNAPSHOT" 

    :description "FIXME: write description" 

    :dependencies [[org.clojure/clojure "1.2.1"]] 

    :dev-dependencies [[lein-eclipse "1.0.0"]] 

) 

Thnks gegeben ist ‚n Grüße, chirag ghiyad

Antwort

5

clojure.contrib ist eine separate Bibliothek, und so ist es Abhängigkeit explizit angegeben werden muss

:dependencies [[org.clojure/clojure "1.2.1"] 
       [org.clojure/contrib "1.2.0"]] 

Von 1.3 aufwärts ist das monolithische clojure.contrib nicht mehr, und Bibliotheken wurden als separate libraries abgespalten.

Diese Bibliotheken sollten sich in/m2/org/clojure/clojure und/m2/org/clojure/clojure/contrib befinden. Beachten Sie, dass diese nicht automatisch in Ihren Klassenpfad eingefügt werden, indem Sie lein eclipse ausführen, nachdem Sie lein deps ausgeführt haben, wodurch Ihre Eclipse-Datei .classpath und .projects bearbeitet wird.

Übrigens würde ich empfehlen, lein plugin install lein-ccw "1.2.0", die Clojure 1.3 kompatibel ist im Vergleich zu Lein-Eclipse verwenden. Anstatt lein eclipse nach lein deps auszuführen, sollten Sie lein ccw verwenden.

Ich habe immer entweder lein-eclipse oder lein-ccw plugins über eine Kommandozeile in leiningen installiert, daher weiß ich nicht, wie Dev-Abhängigkeiten funktionieren sollten. In Leiningen 2.0 trennten sie Plugin- und Dev-Abhängigkeitsfunktionen.

(Hinweis: diese beiden Plugins sind nur verwendbar in stabilen Leiningen 1.7.1)

+0

i angewendet finden sein sollten Ihre Vorschlag nach dem Löschen von my.m2/Repository ..aber als es mir unten Fehler gibt ....---------- 1 benötigt Artefakt fehlt. für Artefakt: org.apache.maven: super-POM: jar: 2,0 von den spezifizierten entfernten Repositories: Zentral (http://repo1.maven.org/maven2), clojars (http: // clojars.org/repo/) –

+0

sagst du, dass nach dem Ausführen ... lein Plugin installieren lein-eclipse "1.2.0" ... ich brauche das nicht hinzuzufügen ....: dev-dependencies [[lein-eclipse "1.0.0"]] ... Zeile in meinem Projekt.clj ?? –

+0

Mein Problem ist gelöst, nachdem ich meine Clojure-Version auf 1.7.1 aktualisiert habe, ich schätze Ihre Hilfe @NielsK –

3

Sorry, aber ich kann nicht sagen, noch so schreibe ich eine Antwort.

Diese Antwort ist veraltet, feststellen, dass der Paketname/Clojure-contrib statt/contrib,

die Pakete sonst
lein deps 

nicht

:dependencies [[org.clojure/clojure "1.5.1"] 
       [org.clojure/clojure-contrib "1.2.0"]] 
Verwandte Themen