This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-05-23
Channels
- # aws (4)
- # beginners (14)
- # boot (7)
- # cider (75)
- # clara (87)
- # cljsrn (6)
- # clojure (115)
- # clojure-berlin (2)
- # clojure-dusseldorf (2)
- # clojure-gamedev (8)
- # clojure-italy (15)
- # clojure-russia (9)
- # clojure-spec (46)
- # clojure-uk (195)
- # clojurescript (24)
- # css (44)
- # datascript (19)
- # datomic (18)
- # emacs (6)
- # fulcro (57)
- # hoplon (1)
- # jobs (3)
- # jobs-discuss (37)
- # jobs-rus (3)
- # luminus (6)
- # lumo (28)
- # off-topic (24)
- # onyx (11)
- # planck (8)
- # re-frame (31)
- # remote-jobs (12)
- # rum (10)
- # schema (4)
- # shadow-cljs (28)
- # specter (24)
- # sql (3)
- # tools-deps (34)
- # vim (43)
- # yada (10)
The error message when deps.edn
’s parens aren’t balanced could be friendlier:
Error building classpath. EOF while reading
java.lang.RuntimeException: EOF while reading
File a ticket
lein-tools-deps does not seem to be marking my src
directory as a source root. I am using [lein-tools-deps "0.3.0-SNAPSHOT"]
with :tools/deps
set to [:system :home "/path/to/deps.edn"]
. Has anyone else ran into this issue?
@kenny I have hit this just in the last couple of days, setting up a monorepo with a bunch of directories which each have their own deps.edn
. I ended up adding "src"
to :paths
in each deps.edn
hmm, I am trying to set up the repo on another machine now to do some more testing and getting a completely different error with lein-tools-deps
mattpro:chia MattPro$ lein pom
java.lang.NullPointerException: null
at clojure.tools.deps.alpha.util.maven$make_session.invokeStatic (maven.clj:105)
clojure.tools.deps.alpha.util.maven$make_session.invoke (maven.clj:102)
clojure.tools.deps.alpha.extensions.maven$eval851$fn__853.invoke (maven.clj:74)
clojure.lang.MultiFn.invoke (MultiFn.java:243)
clojure.tools.deps.alpha$expand_deps.invokeStatic (alpha.clj:170)
clojure.tools.deps.alpha$expand_deps.invoke (alpha.clj:152)
clojure.tools.deps.alpha$resolve_deps.invokeStatic (alpha.clj:215)
clojure.tools.deps.alpha$resolve_deps.invoke (alpha.clj:197)
lein_tools_deps.plugin$resolve_deps.invokeStatic (plugin.clj:78)
lein_tools_deps.plugin$resolve_deps.invoke (plugin.clj:69)
lein_tools_deps.plugin$middleware.invokeStatic (plugin.clj:93)
lein_tools_deps.plugin$middleware.invoke (plugin.clj:85)
the line numbers on make_session
make me think it is somehow not a recent version of tools.deps, though i just ran brew upgrade clojure
this is a known issue with interpreting the paths for dependent repos
or at least that’s my guess as to what you’re seeing
setting :paths explicitly in each deps.edn should workaround it
am doing a workaround currently, generating a project.clj
for lein
to use lein-tools-deps
to generate a full pom
which includes everything necessary for IntelliJ to figure out the project
the first local path is added as the build source path, but I think that actually needs to be changed so it’s a resource path. I don’t think there’s actually a ticket right now about that
if you can file a ticket to remind me (or a patch!) that would be helpful
I am comparing to what lein
generates, it also makes <build><sourceDirectory>src</sourceDirectory> ... </build>
Skipping paths: _build
Skipping coordinate: #:local{:root reactive}
Skipping coordinate: #:local{:root triple-db}
Skipping coordinate: #:local{:root view}
Skipping coordinate: #:local{:root gesture}
Skipping coordinate: #:local{:root style}
oh, there is nothing that can be done about them - Maven has no concept of local deps
or git deps
so that’s never going to work
I guess you could write a custom Maven wagon and use that, but I’m not going to do that
it looks like lein pom
uses a plugin (`build-helper-maven-plugin`) to add the local sources for those:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>_build</source>
<source>reactive/src</source>
<source>triple-db/src</source>
<source>view/src</source>
<source>view/test</source>
<source>gesture/src</source>
<source>style/src</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
yeah, I’m not going to use that
you can add these to your pom manually if you like. -Spom will sync an existing pom, just updating the rest of it
I think he’s started on that
ANN: I just updated depify so that it can work from a deps.edn alias, if anyone is interested: https://github.com/hagmonk/depify