Return-Path: Delivered-To: apmail-db-derby-user-archive@www.apache.org Received: (qmail 57348 invoked from network); 26 Nov 2008 08:23:50 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 26 Nov 2008 08:23:50 -0000 Received: (qmail 72587 invoked by uid 500); 26 Nov 2008 08:24:00 -0000 Delivered-To: apmail-db-derby-user-archive@db.apache.org Received: (qmail 72554 invoked by uid 500); 26 Nov 2008 08:24:00 -0000 Mailing-List: contact derby-user-help@db.apache.org; run by ezmlm Precedence: bulk list-help: list-unsubscribe: List-Post: List-Id: Reply-To: "Derby Discussion" Delivered-To: mailing list derby-user@db.apache.org Received: (qmail 72543 invoked by uid 99); 26 Nov 2008 08:24:00 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 26 Nov 2008 00:24:00 -0800 X-ASF-Spam-Status: No, hits=-4.0 required=10.0 tests=RCVD_IN_DNSWL_MED,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (athena.apache.org: local policy) Received: from [192.18.6.24] (HELO gmp-eb-inf-2.sun.com) (192.18.6.24) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 26 Nov 2008 08:22:32 +0000 Received: from fe-emea-09.sun.com (gmp-eb-lb-1-fe3.eu.sun.com [192.18.6.10]) by gmp-eb-inf-2.sun.com (8.13.7+Sun/8.12.9) with ESMTP id mAQ8NEGd017271 for ; Wed, 26 Nov 2008 08:23:16 GMT Received: from conversion-daemon.fe-emea-09.sun.com by fe-emea-09.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) id <0KAX00001LVL9U00@fe-emea-09.sun.com> (original mail from Knut.Hatlen@Sun.COM) for derby-user@db.apache.org; Wed, 26 Nov 2008 08:23:14 +0000 (GMT) Received: from localhost (c046D47C1.dhcp.bluecom.no [193.71.109.4]) by fe-emea-09.sun.com (Sun Java System Messaging Server 6.2-8.04 (built Feb 28 2007)) with ESMTPSA id <0KAX00DT2LXXJD30@fe-emea-09.sun.com> for derby-user@db.apache.org; Wed, 26 Nov 2008 08:22:46 +0000 (GMT) Date: Wed, 26 Nov 2008 09:22:56 +0100 From: Knut Anders Hatlen Subject: Re: JDK 1.4 support? In-reply-to: Sender: Knut.Hatlen@Sun.COM To: Derby Discussion Message-id: MIME-version: 1.0 Content-type: text/plain; charset=us-ascii Content-transfer-encoding: 7BIT References: <30460761.1227627920084.JavaMail.root@cps4> <492C234C.2040107@amberpoint.com> User-Agent: Gnus/5.110011 (No Gnus v0.11) Emacs/22.1 (usg-unix-v) X-Virus-Checked: Checked by ClamAV on apache.org Dag.Wanvik@Sun.COM (Dag H. Wanvik) writes: > I think we just need one JDK (1.6), but we do need JREs for 1.4 and > 1.5 to compile Derby successfully. That's correct. JDK 1.6 is not required, though, so JRE 1.4 and JDK 1.5 should be enough if you don't care about JDBC 4.0 support. > I am not sure BUILDING.txt reflects > this, though. I agree it is a bit cumbersome for the would-be > developer to have to download all that. I think we need the 1.4 JRE to > make sure we maintain compatibility with JME CDC 1.1 Foundation > profile (Constrained Device Configuration). Presently, there is a > single build (one jar file version only) for embedded Derby. What we need JRE 1.4 for is the JDBC 3.0 interfaces. We don't need JRE 1.4 for the compatibility with Foundation 1.1, but we need to compile with source level 1.4 to stay compatible. Since the JDBC 3.0 interfaces are the same in JRE 1.4 and JRE 1.5, it should be possible to compile against JRE 1.5 instead of JRE 1.4. I have tried that in the past, and the resulting jar files were usable on a Java 1.4 platform. I haven't tried it lately, so I don't know if it is still possible. > It would have been nice if new developers didn't have to worry about > that... Agreed. First step would be to file a JIRA issue to remove the compile-time dependency on JRE 1.4. Then we could consider the options there. If we want to preserve compatibility with 1.4, I think we have these alternatives: 1) Compile against the JDBC 3.0 interfaces from JRE 1.5, using source level 1.4 2) Create stubs based on Apache Harmony's class library for compilation of the JDBC 3.0 driver, much the same way as we did for JSR-169 in DERBY-3703 With alternative (1) we'd need JRE 1.5 + JDK 1.6 to produce a full build (JSR-169, JDBC 3.0, JDBC 4.0). With alternative (2) JDK 1.6 should be enough. -- Knut Anders