"The fact is, most of us need the IDE to support all 3 build tools (perhaps more) well, as first class citizens. I'll personally always pick Maven if I have the choice on a project, but often have to work with Ant and Gradle too. We've already made a decision in terms of wizard layout to make all 3 options more clearly visible, and I hope we don't revisit that.”
I think this is the important take-away. The NB infrastructure for project wizards, building, debugging, etc. must have a good architecture to support various build systems, as those three are certainly not the last. That NB will open an Ant, Maven, or Gradle project out-of-the-box and “just work”, without going through an awkward “import” is one of the things I love about NetBeans. It is perhaps the number one reason that I choose to use it over Eclipse or Idea. Let’s make sure that “working with your projects a they are” remains one of NetBeans’ great advantages. Adding and supporting deep integration (as much as possible) with arbitrary build tools should have decent support APIs within NB. I am not familiar, maybe it is already great, but if there are difficulties connecting different systems, perhaps some time needs to be spent improving NB architecture in that area. Managing dependencies through a GUI instead of editing XML, or Gradle scripts would be great, including first-class support for Ant+Ivy. This can be difficult for free-form scripts like Gradle, but NB can assist, just like browsing for artifacts on Maven Central will show you the code you need to add for various tools, NB can offer actions to inject that code, for example. IDE awareness of the configured artifact repositories and showing available versions, hinting when new versions fo dependencies are available, making the distinction (through semantic versioning) of bug-fix versions vs. versions with greater risk of breaking changes, etc. Those are things the IDE can assist with. Cheers, Scott > On Aug 13, 2020, at 4:36 AM, Neil C Smith <[email protected]> wrote: > > On Thu, 13 Aug 2020 at 07:09, Laszlo Kishalmi <[email protected]> > wrote: >> Even if Maven is still strong out there, I consider >> that as a legacy tool. > > And Gradle is just Ant with slightly better syntax! ;-) Yes, let's > not - build tool flame wars are so dull, and we've had enough. I can > point to multiple people around here and in the wider Java ecosystem > who would make the same points as you about Gradle. > > The fact is, most of us need the IDE to support all 3 build tools > (perhaps more) well, as first class citizens. I'll personally always > pick Maven if I have the choice on a project, but often have to work > with Ant and Gradle too. > > We've already made a decision in terms of wizard layout to make all 3 > options more clearly visible, and I hope we don't revisit that. We > did talk about prioritising Maven as the preferred tool for new users, > which makes some sense in terms of how the IDE can support. But on > tutorials, maybe parallel tracks or alternative sections on one page > for at least Maven and Gradle makes sense? eg. if you look at the > getting started in NetBeans in the OpenJFX documentation (as JavaFX > was mentioned), it talks you through all 3 options. > > I've no idea what problems people are having with multi-module Jigsaw > and Maven, but working on one now, I think there are things we could > do better in the IDE UI to support that across build systems. > > In terms of the OP's question on new features, then having a general > intention of feature parity (whatever that means) makes sense, but > might be difficult to always achieve in practice? > > Best wishes, > > Neil
