[jboss-dev-forums] [Design of JBoss Build System] - JDK 1.4 Compatibility for Microcontainer and other Projects

pgier do-not-reply at jboss.com
Thu Aug 2 17:05:10 EDT 2007


I'm working on setting up jdk1.4 unit tests for microcontainer, and I've run into some issues that would be good to discuss.  The first idea that I had was to use a classifier to generate jdk1.4 compatible artifacts and store them in the repository.  So the jboss test project (a dependency of microcontainer tests) would generate an artifact with a -jdk14 classifier and look something like jboss-test-jdk14.jar and live next to the jdk5 artifact in the repository.  Then projects that want to use the jdk14 version of jboss-test would specify the dependency with the "jdk14" classifier.

There are a couple of problems with this model:
One is that artifacts with classifiers do not get the same dependency management as the main project artifact.  So there is no concept of transitive dependencies for these artifacts.
Another issue is that there are a lot of released artifacts that do not currently have jdk14 compatible versions.  So there is no compatible artifact that can be used by the jdk14 microcontainer tests.

So what I'm thinking about now is having a separate repository for jdk14 compatible jars.  Basically it would sit next to the maven2 repository on repository.jboss.org and snapshots.jboss.org.  So we'd have something like http://snapshots.jboss.org/maven2-jdk14.
Projects could be built and deployed to this repository using a jdk14 profile that will retro-translate the classes, jar them up, and deploy to the jdk14 repository.  Then when we want to run the microcontainer jdk14 tests, we just depend on this repository instead of the default one.

One issue with this is the problem of where do we get jdk14 versions of our existing jar dependencies if the project has already been released without those jars?  For this, I'm working on a feature of the maven-jboss-retro-plugin that will pull a specified project version from the repo, retro translate it, and deploy it to the jdk14 repo.

Anyway, I'm looking for any feedback about whether this plan sounds reasonable, or is there a better/easier way to do all this?


View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4070306#4070306

Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4070306



More information about the jboss-dev-forums mailing list