Howdy,

On Fri, May 6, 2022 at 4:01 PM Thomas Broyer <t.bro...@gmail.com> wrote:

> Fwiw, my "daily routine" with That Other Build Tool is to just ask it to
> build and let it handle everything for me: never need to clean (through git
> clean or the clean task), never need to nuke my local cache because it
> really only includes remote artifacts and I never need to use SNAPSHOTs
> (again, because everything can be built in the same invocation without the
> need to split things in separate "projects" –like you suggested for the
> extension or even annotation processor–, so I never need to 'install'
> things locally, or deploy snapshots to a repository), and never need to do
> "quick-builds" either. I ask it to build, it builds what it needs to build,
> everything Just Works™.
> It also has accurate incremental builds, and even a (local or remote, I
> only use local) build cache so things don't necessarily have to be rebuilt
> when I switch between branches.
> This is what I expect from any build tool, and we even start to see such
> things coming to Node/NPM!
>

All the same thing I'd expect from products backed by commercials companies
too! And I find it appealing that some companies keep comparing their
product to ASF Maven :)

But joking aside, I did not say a word about my "daily routine" being "best
practice", or that it's something like "that's how things should be done"
with Maven, I just told you what my own practice is.

And my suggestion was more about logically separating things, for
extensions is a must (technical reasons), while for "annotation case" is as
you correctly see: dependencies from plugin configurations are "not
visible" for Maven project sorter, true. Something that probably needs
improvement. But I still claim the opposite side: you tend to
build/release your annotation always (I believe your CI does full build,
what you build on your workstation remains on your workstation), while I
tend to spend cpu cycles on a when-needed basis: build once, deploy, reuse.
And both, my workstation and CI will just "pull" the dependency, not
"figuring out" if it needs to be built (on WS) or just build it always (on
CI).


HTH
T

Reply via email to