4 ms·
> Leiningen sadly uses Maven under the hood. It imports some classes from Maven in order to integrate with Maven repositories, but the vast majority of Leining
by weavejester 14y ago
> Leiningen sadly uses Maven under the hood.
It imports some classes from Maven in order to integrate with Maven repositories, but the vast majority of Leiningen has nothing to do with Maven.
> Wanna quickly add a private .jar file / private repo? Good luck.
It's currently a bit of a pain setting up an encrypted credentials file, but once that's set up it's very straightforward to use the s3-wagon-private repository to use an S3 bucket as a repository. It's just two extra lines to your project file.
edit: Apparently Lein 2 supports unencrypted credential files now, which makes things even easier if you have full-disk encryption (or aren't worried about your credentials being read).
> And what happens if you have an Internet connection but some high-target repo gets rooted and a major Java .jar gets replaced with a version containing an exploit?
This is an issue, but I believe there's an effort to solve this in Clojars by being stricter about verifying package signatures. Already all jars uploaded to Clojars with Leiningen 2 are signed by default AFAIK.
You can also easily change the default repositories Leiningen uses when searching for packages.
> I've always been amazed at how many devs cannot correctly configure a Java classpath themselves and need to be babby-sitted by a tool like Maven.
I suspect a sizeable majority of Clojure developers can configure a classpath, but why bother if a tool can do it for you? The prospect of manually managing a dependency tree of 20, 30 or even 100 packages is just insane when Lein can do it for you.
- nathell 14y ago> It imports some classes from Maven in order to integrate with Maven repositories, but the vast majority of Leiningen has nothing to do with Maven. To be more precise, Leiningen 2 uses Sonatype Aether for dependency resolution, unlike Leiningen 1 which actually used to include Maven. Sonatype Aether is, I believe, also the dependency resolution library used in Maven 3 (but not Maven 2) -- but it's debatable whether it is actually a part of Maven.
- weavejester 14y agoI was actually thinking about the Maven indexer library that Leiningen uses for searching Maven repositories, but you raise a good point about dependency resolution no longer using Maven.