API for clojure.java.basis - Clojure v1.12.0 (in development)

Full namespace name: clojure.java.basis


The lib basis includes which libraries and versions were loaded both
for direct dependencies and transitive dependencies, as well as the
classpath and possibly other information from the resolution process.
This basis will be known if the runtime was started by the Clojure CLI.

The Clojure CLI or tools.deps merge a set of deps maps (often from
deps.edn files). Additional runtime modifications are supplied via argmap
keys, provided via alias maps in the merged deps. Deps maps typically have
:paths, :deps, and :aliases keys.

The basis is a superset of merged deps.edn files with the following
additional keys:
  :basis-config - params used to configure basis deps sources, can be
                  string path, deps map, nil, or :default
    :root - default = loaded as a resource from tools.deps)
    :user - default = ~/.clojure/deps.edn)
    :project - default = ./deps.edn)
    :extra - default = nil
    :aliases - coll of keyword aliases to include during dep calculation
  :argmap - effective argmap (after resolving and merging argmaps from aliases)
  :libs - map of lib to coord for all included libraries
  :classpath - classpath map, keys are paths (to directory or .jar), values
               are maps with source identifier (either :lib-name or :path-key)
  :classpath-roots - vector of paths in classpath order (keys of :classpath)

Public Variables and Functions


Usage: (current-basis)
Return the current basis, which may have been modified since runtime launch.

    Added in Clojure version 1.12


Usage: (initial-basis)
Initial runtime basis at launch, nil if unknown (process not started by CLI)

    Added in Clojure version 1.12


Public Variables and Functions


Usage: (update-basis! f & args)
Update the runtime basis by applying f with args

Logo & site design by Tom Hickey.
Clojure auto-documentation system by Tom Faulhaber.