3 ms·
I have hazy but broadly positive recollections of ant and nant. Wrote some c# and it showed up in the XML, behaved broadly as expected. Why did developers move
by JonChesterfield 4y ago
I have hazy but broadly positive recollections of ant and nant. Wrote some c# and it showed up in the XML, behaved broadly as expected. Why did developers move away from it?
- pjmlp 4y agoBecause most Ant is programmable (I really don't care if it XML based), and if one doesn't use macros (which most didn't), then one ends up with tons of spaghetti code to understand what a set of folders full of build.xml files actually do in practice, in what sequence, and what steps are required to be changed when adding new dependencies.
- latchkey 4y agoI was the person who first used Ant outside of Sun. James Davidson developed it so that he could build his servlet engine more easily. I brought it into the ASF when we created Jakarta and got the code to the servlet engine (which became Tomcat). I did a lot of early work on Ant. It solved a problem at the time, which is that Java didn't really have a build system. We were using Makefiles and that wasn't easily compatible with Java. All code rots over time and part of that is because we learn better ways to do things from prior experiences. In the case of Ant, other solutions were created to solve the problems that Ant didn't solve. For example, Maven promised to clean up the code duplication that Ant created (mentioned in the comment below). Maven created a whole another set of issues though, so Gradle was created to "fix" those issues. I'm sure one of the fancy newer FAANG build systems is far better than Gradle, but they have issues around being focused on insanely large codebases. At the end of the day, I still don't think this is a solved problem in the way that git kind of solved SCM. Heck, I'm not even sure that a perfect build system can be solved... everyone has their own requirements.