Don't worry. I'm not trying to reproduce the Ant build logic. I'm trying to be 
as Maven& idiomatic as I can in the actual build.

But if possible I want to produce, from that, a directory which contains 
somethIng close to what the Ant build would have delivered. Both because I 
haven't had time to rework the tests yet and they have assumptions about what 
they access to execute the build, and because showing that I can get the same 
final jar or zip file out of the build is strong evidence that the port is 
correct and complete.

I've been using diffs between the Maven-produced jarfiles and the Ant ones as 
sanity checks, and that has flushed out some errors in the build along the way. 
But that's the only level at which I'm making it look like Ant, and that only 
as a final postprocessing layer.

Remember, I'm an XSLT developer. Declarative programming is nothing new to me. 
I'm just still learning how to write the declarations so Maven will do what's 
necessary. If anything, I was hoping Maven's dependency driven defaults were 
just a bit stronger than they are... but I'm learning how to talk to it.

We're going in the same direction. I'm just learning how Maven wants to get 
there.



--
   /_  Joe Kesselman (he/him/his)
-/ _) My Alexa skill for New Music/New Sounds fans:
   /   https://www.amazon.com/dp/B09WJ3H657/

() Plaintext Ribbon Campaign
/\ Stamp out HTML mail!
________________________________
From: Greg Chabala <greg.chab...@gmail.com>
Sent: Saturday, November 11, 2023 6:32:13 PM
To: Maven Users List <users@maven.apache.org>
Subject: Re: Can the jar plugin respect .gitignore?

I hesitate to bring it up, but this seems as good a time as any. You've
mentioned several times your intent to massage the Xalan Maven build to
produce artifacts at parity with the existing Ant build, and not just the
contents of artifacts but also where they end up in the directory
structure, for the convenience of those who are used to the Ant build.

I foresee that if you are truly successful in this goal, you will have
thoroughly reimplemented a procedural Ant build, and created a very weird
Maven build, to the point where you may exclaim 'why did I even start this?
It took so much work to get Maven to do what I was doing easily in Ant!',
and Maven users will be confused about why there's nothing they expected in
the target directory after running compile.

There's something to be said for embracing the Maven Way [1], and if you
want to keep both builds in sync for a time, perhaps the effort would be
better spent in updating the Ant build to put things in the places Maven
puts them by default.

[1]: https://maven.apache.org/background/philosophy-of-maven.html

Reply via email to