Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can't add clojure source jar to classpath #654

Closed
pdbrown opened this issue Oct 30, 2017 · 1 comment
Closed

Can't add clojure source jar to classpath #654

pdbrown opened this issue Oct 30, 2017 · 1 comment
Labels

Comments

@pdbrown
Copy link

pdbrown commented Oct 30, 2017

Hi! I just started using boot, and am really liking it -- especially the order it brings to my byzantine frontend builds. The ability to boot a repl from which I can hack around in both boot and the rest of my project is pretty cool too. I noticed this little issue as I was migrating from a lein project, and will send a PR.

Boot Bug Report

Platform details

Platform: Linux
Platform version: Debian 4.9.30-2+deb9u2
JRE/JDK version: openjdk 1.8.0_131

Boot details

Boot version: 2.7.2
build.boot present?: yes
~/.boot/profile present?: no

build.boot content

(set-env! :dependencies
          #(conj % '[org.clojure/clojure "1.9.0-beta2" :classifier "sources"]))

boot.properties content

BOOT_CLOJURE_NAME=org.clojure/clojure
BOOT_CLOJURE_VERSION=1.9.0-beta2
BOOT_VERSION=2.7.2

Description

One can't currently add clojure java sources to the classpath, and therefore can't jump to clojure java definitions in CIDER. When adding a dependency on, say, [org.clojure/clojure "1.9.0-beta2" :classifier "sources"], the corresponding jar isn't added to the classpath because it's filtered out by boot.pod/resolve-dependency-jars. Other source jars, which aren't caught by that filter, can be added without issue.

Steps to reproduce

  1. Open (the above) build.boot in CIDER
  2. Run cider-jack-in
  3. Notice the following does not contain the source jar:
(->> (clojure.string/split (:boot-class-path (get-env)) #":")
     (filter #(clojure.string/includes? % "org/clojure/clojure")))
pdbrown pushed a commit to pdbrown/boot that referenced this issue Oct 30, 2017
The rm-clj filter of boot.pod/resolve-dependency-jars prevents adding the
org.clojure/clojure dependency to work around an old issue (see 61c948f),
but was also keeping clojure source artifacts off the classpath.
This change narrows the filter to remove only clojure dependencies that aren't
sources, so one can add e.g.
[org.clojure/clojure "1.9.0-beta2" :classifier "sources"]
to enable jumping to clojure java sources in CIDER.
Deraen added a commit that referenced this issue Nov 1, 2017
Allow clojure source jars onto the classpath (#654)
@martinklepsch
Copy link
Member

Closed via #655

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants