4 ms·
Maven and Java really don’t get enough credit for how well it’s dependency management works. So many inferior dependency management systems for other languages
by WatchDog 3y ago
Maven and Java really don’t get enough credit for how well it’s dependency management works.
So many inferior dependency management systems for other languages have come along later, and learned nothing from those that came before it.
- baby 3y agoIs this a joke?
- theendisney2 3y agoI think the correct approach is to do full-real-name_good-package-name it might not be practical but it would be legendary.
- bsder 3y agoNot even remotely a joke. The inverse-style domain name thing does a really good job of removing the whole issue of squatting from the ecosystem. You have to demonstrate some level of commitment and identity through control of a domain name in order to publish. I would also say that this puts just enough friction so that people don't publish dogshit. crates.io demonstrates quite clearly that you either have to go all the way and take responsibility for curation or you have to get completely out of the way. There is no inbetween.
- speed_spread 3y agoHaving tried Java and other languages, no, it's not a joke. Other than XML Maven got a lot of things right.
- chii 3y agoand i dont particularly think that using xml is that bad. The schema is well defined, and gives you good autocompletion in any competent IDE (such as intellij). It took some iterations before maven 3 became "good", so people forget that it wasn't as nice before now! Unfortunately, it seems that the lessons learned there is never really disseminated to other ecosystems - perhaps due to prejudice against "enterprisey" java. Yet, these package managers are now facing the sorts of problems solved in java.
- kitd 3y agoAnd you don't even need to use XML with Polyglot Maven https://github.com/takari/polyglot-maven https://github.com/takari/polyglot-maven
- hardware2win 3y agoWhat the hell is that XML hate Whats the diff between changing lib version in xml and json?
- speed_spread 3y agoI have no problem with XML in general and even think it's still the better format for many things. But it's not really appropriate for a build config. Thankfully Maven now offers polyglot but I've seen no use of it in the wild.
- tootie 3y ago100% agree. It's unbelievable what a PITA it is dealing with pip or npm compared to Maven even 10 years ago. The descriptors could get convoluted but you could also edit them in an IDE that knew the expected tokens to make things happen.
- symlinkk 3y agoWhat’s so hard about “npm install” and “package.json”. It’s dead simple
- FridgeSeal 3y agoNo you see Java devs have stockholm-syndromed themselves into believe that a giant stack of XML, or some unhinged mini-language are actually good, and much better than something the humans involved can actually read and parse easily and now to compensate with other ecosystems providing 85% of the functionality, with 5% of the pain, they’ve got to find some reason to complain about them.
- dingi 3y agowhat's wrong with XML? Maven XML is a configuration not a programming language.
- xtremegoose 3y agoIs this a joke? XML is horrible to work with, more boilerplate than information. Compare your average maven file to a cargo.toml and tell me which is easier to work with...
- richbell 3y ago"XML is more verbose" is a lazy criticism in the same veign as "Python is better than Java because you can do 'Hello World' in one line". Maven files have a simple conventional structure and a defined schema. Once you learn it, it's a breeze to work with. It's not like you need to write hundreds of lines of SOAP or XLST — which is actually why people started to dislike XML, and not because XML inherently bad. Edit: I'd also take XML over TOML any day, especially when it comes to nested objects and arrays.
- pjmlp 3y agoAnd NuGET, which was inspired on them.