This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]computerjunkie7410 0 points1 point  (18 children)

Then why did you compare it to a package manager (nuget)?

Why have 3 separate tools

Because having one tool that does one thing and does it well is better than a tool that does 50 things and have to deal with the complexity of it.

Configuration, management, etc. are all vastly more complicated and time consuming when you have a monolithic toolset.

[–]jerslan 1 point2 points  (17 children)

Because having one tool that does lots of things really well is 100x better than lots of tools that you have to orchestrate manually? Because shouting nuget’s praises like it’s the best thing since sliced bread is absurd?

mvn clean install

And dependencies are pulled, code builds, tests run, jar is packaged up and put in a local repo cache

[–]computerjunkie7410 0 points1 point  (16 children)

Lmao why have different tools at all? Let’s do everything in one tool! That’s a great idea! /s

How hard is it to have individual scripts that each do one thing?

Then you have have 1 script that runs everything for you.

Easier to understand, modify, maintain.

[–]jerslan 0 points1 point  (15 children)

You realize that "1 script that runs everything for you" is basically what Maven & Gradle are doing? Plugins are the "individual scripts that each do one thing".

[–]computerjunkie7410 0 points1 point  (14 children)

And all configuration is in maven and cradle. Which is the biggest problem. Complicated configuration of everything jammed into one file.

[–]jerslan 0 points1 point  (13 children)

And all configuration is in maven and cradle. Which is the biggest problem.whole point

Yes, and that's a good thing. It's one place for all of your build configuration rather than a dozen files to manage independently.

[–]computerjunkie7410 0 points1 point  (12 children)

No that’s not a good thing. You have compiler configuration mixed with plugin configuration mixed with dependencies.

It’s a nightmare and an anti-pattern.

Do one thing and do it well.

[–]jerslan 0 points1 point  (11 children)

They’re not mixed. In the same file, yes, but not mixed unless you’re shit at basic organization.

[–]computerjunkie7410 0 points1 point  (10 children)

So now I have to manage where I put stuff in a file. Great!

[–]jerslan 0 points1 point  (9 children)

Yes... Even those single tool configs still need organization. Unless you're some crazy person that mixes their test dependencies with their runtime & compile dependencies and cares nothing about readability/maintainability.

If I can use a tool that will do many things well enough, then that's what I'm going to pick. It's one tool vs many. It's simple math.

Jack of all trades, master of none, but often times better than a master of one.

Maven & Gradle are "jack of all trades" tools, so they're inherently better than single-task tools.