delbd wrote:
Dirk Olmes a écrit :
Graham Leggett wrote:
Richard Chamberlain wrote:

I agree it's not ideal, but I'm open to suggestions as to how to
guarantee code from a particular project works in a java 1.4
environment?

Use Continuous Integration and a test suite.

That's what we do here, too. We use profiles that are auto-activated by the JDK type and have modules declarations only inside the profiles. WE evaluated going through the hassle of specifying the RT jar etc but in the end decided that it wouldn't be worthwhile so we just use -source and -target to bulid.

Our CI server has two build plans: one for regular JDK5 builds (that runs on a JDK5) and on that runs nightly (on a JDK1.4) ensuring JDK1.4 source compatability for the modules that require it.

Even greater care must be taken now when managing the dependecies: does any module bring in JDK5 compatible third party deps in? Do JDK14 modules depend on JDK5 modules?

Cross-JDK builds are doable with Maven, is's just another pile of complexity on top of what you're already having to deal with.

So, can we consider that a successfull build using a 1.4 JDK + "source" and "target" in build are enough to guarantee that none of the transitive dependencies require jre 5 or higher?

Not really. After a successful build with JDK1.4 you know that none of your direct dependencies (the ones you're importing in your Java classes) don't use JDK5. At runtime this may be a completely different story as transitive dependencies on which you don't have compile time dependencies might still be JDK5. You *might* be safe once all your tests run green on JDK1.4 as well but that requires proper coverage, of course.

-dirk

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to