3 ms·
> Maven is simple, the same in every project (this is huuuuuge), just works and gets out the way. Recently tried to find the correct and canonical way to set u
by skinkestek 6y ago
> Maven is simple, the same in every project (this is huuuuuge), just works and gets out the way.
Recently tried to find the correct and canonical way to set up a new, small spring boot project for a customer. No one could tell me how: "we just use spring initializr and copy the relevant files" From where? Uh, oh. So I tried to find a canonical solution. Did some research. At least 14 variants..! No clear winner.
Nobody really understands it it sees but at least they don't have to use the dreaded Maven.
(For those who don't know, Mavens main disadvantage is that it is written in xml. Since Maven files frequently gets over 30 lines long - especially if people don't know what they are doing - and (parent projects) needs to be updated twice a month on average because of updates to dependencies this is a living nightmare to some people ;-)
Might contain traces of both sarcasm, irony, exaggerations and other literary tools. Those who get it, feel free to laugh. Those who don't: After ~15 years in the field I've not seen anything working as well as Maven on the kind of projects and teams I work on and I also don't think I've seen any other project getting as much undeserved flak.
- twic 6y ago> Mavens main disadvantage is that it is written in xml I would say that this is Maven's most obvious disadvantage. Its main disadvantage is its inflexibility. I'm working on a little library right now that is sort of a facade for two possible backend libraries. Some code is shared, some depends on backend A, some on backend B. I want to separate the three kinds of source code, compile and test each against the correct dependencies (none, A, or B), and then put all the class files in one jar file. In Gradle i would define some extra configurations for the A and B sides, then customise the standard jar task to include their output. What would i do in Maven? My Maven knowledge is pretty out of date, but i think the Maven answer would be "don't do that, create three modules and build and publish three artifacts". Or, to put it another way "our tool can't do that, so you should make life worse for your users, but we're going to insist that our way is actually the proper way to do it, for mysterious quasi-mystical reasons".
- vips7L 6y ago> What would i do in Maven? Typically customization of maven goals is done via profiles. You can modify the configuration of the plugins depending on which profile is active. Though I'm obviously not sure if it will solve your problem without knowing exact details.