[ https://issues.apache.org/jira/browse/XALANJ-2578?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Uwe updated XALANJ-2578: ------------------------ Attachment: xalan-java-trunk.patch Patch adding Maven POM files > Maven build system for Xalan-J > ------------------------------ > > Key: XALANJ-2578 > URL: https://issues.apache.org/jira/browse/XALANJ-2578 > Project: XalanJ2 > Issue Type: Improvement > Security Level: No security risk; visible to anyone(Ordinary problems in > Xalan projects. Anybody can view the issue.) > Components: Xalan > Affects Versions: The Latest Development Code > Reporter: Uwe > Assignee: Steven J. Hathaway > Labels: build, maven > Fix For: The Latest Development Code > > Attachments: xalan-java-trunk.patch > > Original Estimate: 36h > Remaining Estimate: 36h > > I have developed Maven POM files to build Xalan-J with Maven instead of Ant. > The additions attempt to be non-intrusive, leaving the existing > ant build system untouched. For this reason, the POMs are not as lean > as they could be (see below). > I've run the minitest suite ('ant smoketest.gump'), and it all works > fine on a fresh checkout. > This patch is intended as a basis for discussion, as there are still a > few questions open: > * Will this replace the ant build? (preferably yes, we could make the > POMs much leaner by moving sources into standard Maven directories; > less maintenance) > * What will be the target version number? (see below for details) > * How do we integrate testing? (it's currently in a separate project, > and that's a good thing - but running it from Maven would be nice) > Overview > ======== > There is a project parent POM, which groups the project into the > following modules: > * serializer (builds serializer.jar, from the > org.apache.xml.serializer.* packages) > * xalan-impl (builds an intermediate jar from the rest of the sources) > * xalan (builds xalan.jar, using the maven shade plugin to integrate > xalan-impl and dependent libraries into an uber-jar - this replicates > the output of the ant build process) > Output artifacts (xalan.jar and serializer.jar) are placed in the > 'build' directory, like in the ant build. The groupId and artifactId > are the same as the ones in Maven Central for Xalan-J 2.7.1 > Details > ======= > In the Maven build, dependent libraries (BCEL, java_cup, regexp) are > pulled from Maven Central and differ slightly in version from what's > checked into SVN in the lib-directory. > The same goes for the tools directory; the Maven tooling uses > artifacts from Maven central and ignores the tools directory > altogether. > Since the versioning scheme in the project differs from standard Maven > versioning (2.7.D2 for a defelopment version of 2.7.2 vs its Maven > equivalent 2.7.2-SNAPSHOT), I've left it with Maven standard for now. > The current version in the POMs is set to 2.8-SNAPSHOT, as I'd expect > a change like this to go into a minor release rather than a bugfix > release. > Because the versioning question is still open, the POMs leave > Version.java in both serializer.jar and xalan.jar alone. Depending on > what we decide to do with project versioning and whether or not we > preserve the ant build (preferably no), the way the Version classes > operate will need to change (either read the version from a generated > property file, read it from META-INF or use Maven filtering). > Currently, the ant build simple overwrites them and removes them on > clean (even though they're checked in). -- This message was sent by Atlassian JIRA (v6.2#6252) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@xalan.apache.org For additional commands, e-mail: dev-h...@xalan.apache.org