Ich brauche einen Namensraum zwischen meinem Clojure (Garten) und mein ClojureScript (Reagenz) zu teilen.Clojure erfordert keine cljc Datei
Derzeit ist das Projektordner wie folgt aussieht:
src/
clj/
name/
css.clj
cljs/
name/
core.cljs
cljc/
name/
config.cljc
Die config.cljc
Datei hat den folgenden Namespace: (ns name.config)
.
Ich habe versucht, diesen Namespace von innen clj/name/css.clj
mit einer erfordern.
(ns name.css
(:require [name.config :as config]))
Dies führt jedoch zu einem Kompilierungsfehler von Garden.
Verursacht von: java.io.FileNotFoundException: Name/config__init.class oder name/config.clj konnte im Klassenpfad nicht gefunden werden.
Ich denke, es ist nicht einmal für cljc
Dateien überprüfen.
Ich habe "src/cljc"
zum :source-paths
Vektor in project.clj
und :garden :builds
aber ich den gleichen Fehler auch nach der Build-Prozesse neu zu starten.
Ich sehe dieses Verhalten auf Clojure 1.7.0 und 1.8.0.
Es kann auch erwähnenswert sein, dass es ohne Probleme in ClojureScript funktioniert (wobei Figwheel den Build behandelt). Ich kann den neuen Namespace ohne Probleme anfordern und verwenden.
Es scheint, als ob ich etwas wirklich einfaches vermissen muss, weil keine der Dokumentation um .cljc
Dateien sogar erwähnt fordert sie.
'project.clj' hat' org.clojure/clojure' bei '" 1.7.0 "' und wenn ich eine REPL boote, bestätigt es 'Clojure 1.7.0'. Alles andere, was in "project.clj" eingestellt werden muss? –
Ich bekomme das gleiche Problem, wenn ich auch 1.8.0 benutze. –
Welche Version von Leinigen verwenden Sie? Sie könnten einen neueren versuchen, wenn er existiert. –