Lorsque Lein établit un projet, un fichier Core.clj est créé avec d'autres répertoires et fichiers. Je veux savoir si je peux scinder le contenu de Core.clj, éteint vers un autre fichier source sous p>
et si oui, comment accéder à ces données de core.clj. p> ../ myProj / src / myProj / code> p>
3 Réponses :
Vous pouvez diviser les définitions sur autant de fichiers que vous le souhaitez, bien qu'elle soit idiomatique de mettre un espace de noms unique dans un seul fichier et inversement. P>
voir http://clojure.org/libs pour savoir comment nommer et charger des fichiers et des espaces de noms. Une chose à garder à l'esprit est que les tirets dans les espaces de noms se traduisent par des soulignements dans les noms de fichiers. P>
Merci. J'abandonne des tirets dans des espaces de noms. J'ai eu trop de problèmes avec eux.
IIRC (je n'ai pas de projet pratique pour vérifier), tout dans votre répertoire ou, dans une déclaration code> NS code> Déclaration: P> src / myProj / code> est dans le 'myProj code> Espace de noms. Donc, votre fichier core.clj code> sera dans l'espace de noms 'myProj.core code>. D'autres fichiers seront dans leurs propres espaces de noms dans l'espace de noms 'myProj code> (par exemple ' myProj.auther-file code> pour autre_file.clj code>), et peut être tiré dans core.clj code> en faisant: (ns myproj.core
(:use [myproj.other-file]))
LEINININEEN'S'S ''S''S ''S> Project.clj STRT> est de définir un projet Voir le par défaut < / a> var dans le code source de Leiningen 2 pour les valeurs par défaut. P>
avec qui dit, avant d'appeler le DEFPPROJECT MACRO, vous pouvez faire ce que vous voulez dans le projet.clj - C'est un script de clojure après tout et votre imagination (et votre familiarité avec Clojure) n'est que ce qui pourrait vous contraindre. En fait, vous pouvez faire ce que vous voulez avec le Var après sa création. Pensez à Project.clj en tant qu'application de clojure pour gérer votre projet. P>
À titre d'exemple, avant que des profils ont été introduits à Leiningen 2, il y avait une "astuce" pour avoir un seul VaR avec des dépendances communes pour: Dépendances et: Attributs de dépendances Dev-Dépendances. Juste pour vous avertir à nouveau - ce n'est plus nécessaire à Leiningen 2 car il propose une installation de profil. Avoir une lecture de Test de votre projet contre plusieurs Versions de Clojure si vous êtes curieux de savoir comment c'était dans le passé. p>