This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-09-13
Channels
- # announcements (2)
- # aws (4)
- # babashka (14)
- # beginners (186)
- # cljdoc (2)
- # cljsrn (7)
- # clojure (56)
- # clojure-austin (1)
- # clojure-australia (2)
- # clojure-europe (46)
- # clojure-france (5)
- # clojure-nl (16)
- # clojure-norway (7)
- # clojure-spec (76)
- # clojure-sweden (15)
- # clojure-uk (13)
- # clojurescript (60)
- # code-reviews (2)
- # conjure (8)
- # datascript (1)
- # datomic (4)
- # depstar (10)
- # emacs (9)
- # events (4)
- # exercism (1)
- # fulcro (36)
- # graalvm (8)
- # introduce-yourself (3)
- # jobs-discuss (2)
- # kaocha (14)
- # lsp (1)
- # minecraft (8)
- # new-channels (1)
- # off-topic (3)
- # pathom (6)
- # polylith (9)
- # re-frame (48)
- # shadow-cljs (5)
- # specter (26)
- # tools-deps (19)
- # vim (2)
- # vscode (1)
Hi! what’s the best way to use depstar to distribute a clojure lib that can be consumed in a maven project?
we can’t aot everything as it would compule all the dependencies as well, ideally we would like the dependencies to be downloaded by maven when the project is included in a java project
@jmayaalv That's a tricky use case, precisely because AOT is transitive. If I was specifically targeting Java project usage, I would write a .java
API that called into Clojure via Clojure's "Java API" and ship the Clojure as source in the JAR with just that one Java class compiled -- and it would depend on Clojure itself as a library.
thanks a lot @seancorfield
If you AOT the .clj
code, even if you exclude "everything" that isn't your own code, you still end up tying the code to a specific version of Clojure itself, which may well bite you in the future.