jvm.deps

all-loaded

added in 3.0

(all-loaded coord)(all-loaded coord loader)

returns all the loaded artifacts of the same group and name

(all-loaded ’org.clojure/clojure) ;;=> (’org.clojure:clojure:jar:) => sequential?

all-loaded-artifacts

added in 3.0

(all-loaded-artifacts)(all-loaded-artifacts type)(all-loaded-artifacts loader type)

returns all loaded artifacts

(all-loaded-artifacts)

clean

added in 3.0

(clean artifact {:keys [full simulate]})

cleans the maven entries for the artifact, :full deletes all the versions

(clean ’org.clojure/clojure “2.4.8” {:full true :simulate true}) => set?

current-version

added in 3.0

(current-version artifact)

finds the current artifact version for a given classloader

(current-version ’org.clojure/clojure) => string?

load

added in 3.0

(load coords)(load coords loader)

loads all artifacts in list, unloading previous versions of the same artifact

load-artifact

added in 3.0

(load-artifact coord)(load-artifact coord loader)

loads an artifact into the system

(load-artifact ’org.clojure/clojure “1.9.0”)

loaded-artifact?

added in 3.0

(loaded-artifact? coord)(loaded-artifact? coord loader)

checks if artifact has been loaded

(loaded-artifact? ’org.clojure/clojure “1.9.0”) => true

resolve

added in 3.0

(resolve x)(resolve x context)(resolve x context {:keys [tag], :or {tag :path}, :as opts})

resolves a class or namespace within a context

(resolve ’clojure.core [’org.clojure/clojure (current-version ’org.clojure/clojure)]) => (contains string? “clojure/core.clj”)

resolve-classloader

added in 3.0

(resolve-classloader x)(resolve-classloader x loader)

resolves a class or namespace to a physical location

(resolve-classloader String) => (contains anything #“java/lang/String.class”)

(resolve-classloader ’code.test) => (contains nil (str (fs/path “src/code/test.clj”)))

resolve-jar-entry

added in 3.0

(resolve-jar-entry x artifact)(resolve-jar-entry x artifact {:keys [tag], :or {tag :path}})

resolves a class or namespace within a jar

(resolve-jar-entry ’clojure.core [’org.clojure/clojure (current-version ’org.clojure/clojure)]) => (contains-in [string? “clojure/core.clj”])

unload

added in 3.0

(unload coords)(unload coords loader version)

unloads all artifacts in list

unload-artifact

added in 3.0

(unload-artifact coord)(unload-artifact coord loader)

unloads an artifact from the system

(unload-artifact ’org.clojure/clojure “1.9.0”)

version-map

added in 3.0

(version-map)

returns all the loaded artifacts and their versions (version-map) => map?