Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 8560D200BFC for ; Sat, 14 Jan 2017 18:15:30 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id 83ECE160B35; Sat, 14 Jan 2017 17:15:30 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id C8520160B2D for ; Sat, 14 Jan 2017 18:15:29 +0100 (CET) Received: (qmail 93737 invoked by uid 500); 14 Jan 2017 17:15:29 -0000 Mailing-List: contact derby-dev-help@db.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: Delivered-To: mailing list derby-dev@db.apache.org Received: (qmail 93720 invoked by uid 99); 14 Jan 2017 17:15:28 -0000 Received: from Unknown (HELO jira-lw-us.apache.org) (207.244.88.139) by apache.org (qpsmtpd/0.29) with ESMTP; Sat, 14 Jan 2017 17:15:28 +0000 Received: from jira-lw-us.apache.org (localhost [127.0.0.1]) by jira-lw-us.apache.org (ASF Mail Server at jira-lw-us.apache.org) with ESMTP id 7D6B225285 for ; Sat, 14 Jan 2017 17:15:26 +0000 (UTC) Date: Sat, 14 Jan 2017 17:15:26 +0000 (UTC) From: "Rick Hillegas (JIRA)" To: derby-dev@db.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Commented] (DERBY-6856) Make it possible to build Derby using JDK 9 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Sat, 14 Jan 2017 17:15:30 -0000 [ https://issues.apache.org/jira/browse/DERBY-6856?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15822871#comment-15822871 ] Rick Hillegas commented on DERBY-6856: -------------------------------------- Unfortunately, build 151 does not fix the following problem which surfaced in build 148: the failure of our test harness to find the derbyall suite. The problem seems to be that the Java 9 class loader no longer finds resources which the Java 8 class loader can locate. The following sample program demonstrates this problem. Compile this program with jdk 8 and put the derby jars on your classpath. This is the output when you run the program on jdk 8... input stream = sun.net.www.protocol.jar.JarURLConnection$JarURLInputStream@3f99bd52 ...and this is the output when you run the program on jdk 9... input stream = null Here is the program: {noformat} public class Derby6856_MissingResource { public static void main(String... args) throws Exception { String resourceName = "/org/apache/derbyTesting/functionTests/suites/derbyall.properties"; Class dummyClass = (new Object()).getClass(); Object is = dummyClass.getResourceAsStream(resourceName); System.out.println("input stream = " + is); } } {noformat} It appears that resource resolution has changed significantly in the recent builds of JDK 9. I expect that this change will be an unwelcome surprise to many users. > Make it possible to build Derby using JDK 9 > ------------------------------------------- > > Key: DERBY-6856 > URL: https://issues.apache.org/jira/browse/DERBY-6856 > Project: Derby > Issue Type: Improvement > Components: Build tools > Affects Versions: 10.12.1.1 > Reporter: Rick Hillegas > Attachments: derby-6856-01-ab-addShardingKey.diff, derby-6856-01-ac-cleanup.diff, derby-6856-02-aa-addShardingKey.diff, derby-6856-03-aa-autoboxingDeprecationWarnings.diff, derby-6856-03-ab-autoboxingDeprecationWarnings.diff, derby-6856-04-aa-autoboxingDeprecationWarnings-part2.diff, derby-6856-04-ab-autoboxingDeprecationWarnings-part2.diff, derby-6856-05-ac-roundingMode-Class.newInstance.diff, derby-6856-05-af-roundingMode-Class.getDeclaredConstructor.diff, derby-6856-05-ag-roundingMode-Class.newInstance.diff, derby-6856-06-aa-observable.diff, derby-6856-07-aa-oneMoreNewInstance.diff, derby-6856-08-aa-cleanupJavadoc.diff, derby-6856-09-aa-javadocEntities.diff, derby-6856-XX-ab-base.diff, derby-6856-XX-ac-base.diff, PTest.java, ptestScript > > > Derby can't be built with JDK 9. Java 9 introduces new JDBC classes like java.sql.ShardingKey and methods which refer to these new classes. > In addition, project Jigsaw has created a new way to name classes (see http://openjdk.java.net/jeps/220). This breaks the PropertySetter build tool which we use so that old JVMs can compile Derby and so that Derby can be compiled to run on old JVMs. > It is likely that we will need to leave this issue open throughout the development cycle of Java 9. -- This message was sent by Atlassian JIRA (v6.3.4#6332)