This may not find any relevant problems, but if you try running the latest
version of Eastwood on your project [1], it can detect the following kinds
of issues that might be causing problems:

* mismatches between namespace names, and the file names they are stored in
[2]
* :require or :use clauses in ns forms that all but the most recent
versions of tools.namespace does not recognize as dependencies, throwing
off its ability to correctly track dependencies between your namespaces [3]

I'd be curious to hear if it does find any such issues in your project, and
if it does, whether correcting them helps tools.namespace work as you hope.

Andy

[1] https://github.com/jonase/eastwood
[2]
https://github.com/jonase/eastwood#check-consistency-of-namespace-and-file-names
[3] https://github.com/jonase/eastwood#wrong-ns-form


On Fri, Apr 10, 2015 at 6:19 PM, JPatrick Davenport <virmu...@gmail.com>
wrote:

> Hello,
> I'm trying to implement the Component ideology. When run something
> manually with component/start-system and stop, it works fine. The main
> method calls component/start-system works fine too. But sadly when I try to
> get the user reflow to work (I copied user namespace from the README on
> GitHub), my main namespace is not reloading.
>
> :reloading (deusdatsolutions.views deusdatsolutions.dynamics
> deusdatsolutions.handler deusdatsolutions.system.route deusdatsolutions.data
> deusdatsolutions.data-impl deusdatsolutions.system.database
> deusdatsolutions.system.common deusdatsolutions.system.server
> deusdatsolutions.system.core deusdatsolutions.user deusdatsolutions.
> handler-test deusdatsolutions.dynamics-test deusdatsolutions.data-impl-test
> deusdatsolutions.core user)
> :error-while-loading deusdatsolutions.user
> #<CompilerException java.lang.Exception: namespace
> 'deusdatsolutions.system.core' not found,
> compiling:(deusdatsolutions/user.clj:1:1)>
>
> deusdatsolutions.system.core is there. It's in the user namespace that
> starts everything off.
> (ns deusdatsolutions.user
>   (:require [com.stuartsierra.component :as component]
>             [clojure.tools.namespace.repl :refer [refresh]]
>             [deusdatsolutions.system.core :as site-core]))
>
> (def system nil)
>
> (defn init []
>   (alter-var-root #'system
>     (constantly (site-core/create-system))))
>
> (defn start []
>   (alter-var-root #'system site-core/start-server))
>
> (defn stop []
>   (alter-var-root #'system
>     (fn [s] (when s (site-core/stop-server s)))))
>
> (defn go []
>   (init)
>   (start))
>
> (defn reset []
>   (stop)
>   (refresh :after 'deusdatsolutions.user/go))
>
> This loads fine, runs the go fine, runs the stop fine too. (reset) gets
> that error.
>
> One thing that might be causing a problem is that I'm using a profiles.clj
> for dev. Something looks off in lein because I have to include the tools
> dependency in dev profile.
>
> Thanks,
> JPD
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to