Hi Team,
The single-layer Mavenization is proceeding on -- I do have a lot now in
the "src/main/config" folder, in various subfolders, as config is
Maven's catch-all folder for resources that are not part of the build
(not a .java file or resources file), some of that will move to a
separate "distribution module" once we go multi-module (i.e.,
incorporate JP's stuff into the main branch.), we already have a JIRA
item for that.
I had earlier discussed having the Ant build use the same output folders
as the Maven build does (i.e., target instead of tests), JP was OK with
no comments from others, but I'm getting close to the stage where I
would also like to start dismantling our Ant build file--basically, it's
getting tiresome testing every change with *both* Ant and Maven, and
needing to update Ant every time there's a file change as well. I'd
like Maven to be our only available build process for more and more
tasks, leaving Ant for things we haven't converted yet: Selenium, dist,
Cobertura, Rat report. Here's my proposed ordering of the dismantling:
1.) Move the Rat report over, and delete on the Ant side. (Actually,
this can be done anytime as it's independent of the others).
2.) Remove the non-test dependencies listed at the top of the Ant file
and have the Ant tasks run with the results from "mvn clean install", i.e.,
load the production JARs from target/JSPWiki/WEB-INF/lib. With this,
we'll have only one source of record for JSPWiki's needed JARs, those
listed in the pom file. (The test deps will have to remain because
Maven doesn't bother downloading those to the JSPWiki folder but just
reads them from the local repository on your machine.) This will be
complete once I'm assured the Ant war, test, webtests and dist targets
still run fine reading from the new file location.
3.) Remove the compile, unit test, and war tasks--all of these must now
be done with Maven: mvn clean install [-Dmaven.test.skip]. To run dist
or webtests using Ant, you'll first now need to run "mvn clean install"
and those two Ant tasks will read from the target folders that Maven
generated (potentially building more files, as in the case with
webtests, in the process.) This will be complete once I'm assured the
webtests and dist targets still run fine reading from the new location.
4.) Move the dist process over, and delete on the Ant side.
5.) At this stage, Ant will be a sharply truncated file, used only for
running the Selenium tests and Cobertura (which I haven't looked at
yet), and even that will be finished once we incorporate JP's stuff.
How does this sound?
Thanks,
Glen