db-derby-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From rhille...@apache.org
Subject svn commit: r1813709 - in /db/derby/code/trunk: ./ java/build/org/apache/derbyBuild/javadoc/ java/client/ java/client/org/apache/derby/jdbc/ java/engine/org/apache/derby/iapi/jdbc/ java/engine/org/apache/derby/impl/jdbc/ java/engine/org/apache/derby/jd...
Date Sun, 29 Oct 2017 21:01:10 GMT
Author: rhillegas
Date: Sun Oct 29 21:01:10 2017
New Revision: 1813709

URL: http://svn.apache.org/viewvc?rev=1813709&view=rev
Log:
DERBY-6974: Convert Derby build to JDK 9 and compile at Java 9 byte code level.

Modified:
    db/derby/code/trunk/BUILDING.html
    db/derby/code/trunk/build.xml
    db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/DiskLayoutTaglet.java
    db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/EndFormatTaglet.java
    db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/FormatIdTaglet.java
    db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/PurposeTaglet.java
    db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/UpgradeTaglet.java
    db/derby/code/trunk/java/client/build.xml
    db/derby/code/trunk/java/client/org/apache/derby/jdbc/BasicClientXADataSource40.java
    db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource.java
    db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource40.java
    db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSourceInterface.java
    db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/build.xml
    db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/build.xml
    db/derby/code/trunk/java/engine/org/apache/derby/jdbc/EmbeddedXADataSourceInterface.java
    db/derby/code/trunk/java/engine/org/apache/derby/jdbc/build.xml
    db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/build.xml

Modified: db/derby/code/trunk/BUILDING.html
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/BUILDING.html?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/BUILDING.html (original)
+++ db/derby/code/trunk/BUILDING.html Sun Oct 29 21:01:10 2017
@@ -42,11 +42,7 @@ limitations under the License.
   <li><a href="#Testing Derby">Testing Derby</a></li>
   </ul>
 </li>
-<li><a href="#Customized Build">Customized Build</a>
-  <ul>
-  <li><a href="#Advanced Build">Advanced Build</a></li>
-  </ul>
-</li>
+<li><a href="#Customized Build">Customized Build</a></li>
 </ul>
 
 <br/><br/><br/><hr color="blue"/>
@@ -84,7 +80,7 @@ If you are reading these instructions, c
 
     <TR>
       <TD><b><i>Java Development Kit</i></b></TD>
-      <TD>You need to install a Java 8 JDK. Probably, your machine
+      <TD>You need to install a Java 9 JDK. Probably, your machine
       already has this JDK. If not, Oracle and IBM supply free JDKs for many machines.</TD>
     </TR>
 
@@ -135,7 +131,7 @@ test harness also:
 Before building Derby, cd
 to the root of your Derby source distribution. That is the top level
 directory which contains the LICENSE and NOTICE files. In addition,
-make sure that the version of Java which you are using is Java 8. You can verify this by
checking the output of the following command:
+make sure that the version of Java which you are using is Java 9. You can verify this by
checking the output of the following command:
 </p>
 
 <blockquote>
@@ -172,8 +168,7 @@ ant -quiet clobber
     <TR>
       <TD><b><i>buildsource</i></b></TD>
       <TD>This target compiles all source files needed for the Derby
-      product. Don't be alarmed by all of the compiler warnings. We'll
-      show you how to tidy those up <a href="#Customized Build">later on</a>.
+      product.
       </TD>
       <TD>
 <blockquote>
@@ -402,128 +397,6 @@ junit=/local0/junit.jar
 
 <br/>
 <br/>
-<blockquote>
-
-<h3><a name="Advanced Build">Advanced Build</a></h3>
-
-<p>
-Derby is supposed to run in the following environment:
-</p>
-
-<TABLE border="2">
-  <TBODY>
-
-    <TR>
-      <TD><b>Platform</b></TD>
-      <TD><b>JDBC Level</b></TD>
-    </TR>
-
-    <TR>
-      <TD><b><i>Java 8</i></b></TD>
-      <TD><b><i>JDBC 4.2</i></b></TD>
-    </TR>
-
-  </TBODY>
-</TABLE>
-
-<br/>
-<p>
-The default Derby build does NOT necessarily verify that the compile-time contract is
-satisfied for this platform. To get compile-time checks, you
-need to make sure that the following variable is set correctly. To
-see the value which the Derby build uses for this variable, build
-Derby after setting the
-following debug variable in your <i>ant.properties</i>:
-</p>
-
-<blockquote>
-<pre><b><font color="blue" size="+2">
-printCompilerProperties=true
-</font></b></pre>
-</blockquote>
-
-<br/>
-<p>
-Here is the variable which determines whether the Derby build
-enforces compile-time contracts for the supported platform:
-</p>
-
-<TABLE border="2">
-  <TBODY>
-
-    <TR>
-      <TD><b>Platform</b></TD>
-      <TD><b>Compiler Variable</b></TD>
-      <TD><b>Description</b></TD>
-      <TD><b>Default Value</b></TD>
-    </TR>
-
-    <TR>
-      <TD><b><i>Java 8</i></b></TD>
-      <TD><b><i>java18compile.classpath</i></b></TD>
-      <TD>The set of libraries in the Java 8 JDK. The build fails if
-      your environment isn't a Java 8 JDK.</TD>
-      <TD>The set of system jars in your JDK if your environment is
-      JDK 8. Otherwise,
-      the build fails.</TD>
-    </TR>
-
-  </TBODY>
-</TABLE>
-
-<br/>
-<p>
-The preceding variable is mandatory for the Derby build.
-You can also force the setting of the preceding variable by setting the following optional
-library variable in <i>ant.properties</i>:
-</p>
-
-<TABLE border="2">
-  <TBODY>
-
-    <TR>
-      <TD><b>Compiler Variable</b></TD>
-      <TD><b>Description</b></TD>
-      <TD><b>Default Value</b></TD>
-    </TR>
-
-    <TR>
-      <TD><b><i>j18lib</i></b></TD>
-      <TD>If you set this variable to be the directory which contains
-      your Java 8 jars, then the Derby build will set
-      <i>java18compile.classpath</i> to be the list of jars in that directory.
-      </TD>
-      <TD>Optional variable. No default value.</TD>
-    </TR>
-
-  </TBODY>
-</TABLE>
-
-<br/>
-<p>
-Here, for instance, are some sample settings of classpath
-variables (you should omit the \ continuation markers, which are
-included in these examples
-simply to improve readability):
-</p>
-
-<blockquote>
-<pre><b><font color="blue" size="+2">
-java18compile.classpath =
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/charsets.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/deploy.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/htmlconverter.jar:
\
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/javaws.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/jce.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/jfr.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/jfxswt.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/jsse.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/management-agent.jar:
\
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/plugin.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/resources.jar: \
-    /Library/Java/JavaVirtualMachines/jdk1.8.0.jdk/Contents/Home/jre/lib/rt.jar
-</font></b></pre>
-</blockquote>
 
 </blockquote>
 

Modified: db/derby/code/trunk/build.xml
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/build.xml?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/build.xml (original)
+++ db/derby/code/trunk/build.xml Sun Oct 29 21:01:10 2017
@@ -143,26 +143,14 @@
     <property name="showenv.done" value="true"/>
   </target>
 
-  <!--  Make sure compiler level is Java 6 level or higher -->
+  <!--  Make sure compiler level is Java 8 level or higher -->
   <target name="checkCompilerLevel">
 
-    <available property="compilerAtCorrectLevel" classname="java.sql.SQLType"/>
-    <fail unless="compilerAtCorrectLevel" message="Compiler level must be Java 8 or later."/>
-
-    <antcall target="checkVMLevel"/>
+    <available property="compilerAtCorrectLevel" classname="java.sql.ShardingKey"/>
+    <fail unless="compilerAtCorrectLevel" message="Compiler level must be Java 9 or later."/>
     
   </target>
 
-  <!-- checkVMLevel:
-       This target determines to some degree the JVM version used to run ant.
-       The resulting properties will indicate the VM level, and may for instance
-       be checked before running junit tests requiring a certain JVM version.
-  -->
-  <target name="checkVMLevel">
-    <available classname="java.sql.SQLType" property="vmLevelIsAtLeast1.8" value="true"/>
-    <available classname="java.sql.ShardingKey" property="vmLevelIsAtLeast1.9" value="true"/>
-  </target>
-
 <!-- ==================================================================== -->
 <!--                     Download junit 3.8.2                             -->
 <!-- ==================================================================== -->
@@ -1057,7 +1045,6 @@
     <antcall target="exclude-from-javadoc">
       <param name="more_exclusions" value="derbydocs_exclusions.ant"/>
     </antcall>
-    <antcall target="exclude-java8-from-javadoc"/>
 
     <javadoc
         additionalparam="-J-mx500M"
@@ -1133,15 +1120,6 @@
     </concat>
   </target>
 
-  <!--
-     Exclude Java 8 support from the javadoc if using Java 7 or earlier.
-  -->
-  <target name="exclude-java8-from-javadoc" depends="checkVMLevel" unless="vmLevelIsAtLeast1.8">
-    <antcall target="exclude-from-javadoc">
-      <param name="more_exclusions" value="derbydocs_java8_exclusions.ant"/>
-    </antcall>
-  </target>
-
   <target name="toolsdocs">
 
     <delete dir="${out.javadoc.dir}/tools"/>
@@ -1205,7 +1183,6 @@
     <antcall target="exclude-from-javadoc">
       <param name="more_exclusions" value="derbydocs_exclusions.ant"/>
     </antcall>
-    <antcall target="exclude-java8-from-javadoc"/>
 
     <javadoc
        additionalparam="-J-mx500M"
@@ -1309,7 +1286,7 @@
 
 <!-- - - - - - - - - - - - - - - derby.jar target - - - - - - - - - - - -->
 
-  <target name="derbyjar" depends="checkVMLevel,initjars">
+  <target name="derbyjar" depends="initjars">
 
     <echo level="info" message="Beginning derby.jar ${sanity.name} build"/>
 
@@ -1634,7 +1611,7 @@
 
 <!-- - - - - - - - - - - - - - derbyclient.jar target - - - - - - - - -->
 
- <target name="derbyclientjar" depends="checkVMLevel,setsanityname,initjars">
+ <target name="derbyclientjar" depends="setsanityname,initjars">
 
     <echo level="info" message="Beginning derbyclient.jar ${sanity.name} build"/>
 
@@ -1713,7 +1690,7 @@
 
 
   <!-- Add extra classes to jar file if building for Java 8 -->
-  <target name="derbyclientjar.1.8" if="vmLevelIsAtLeast1.8">
+  <target name="derbyclientjar.1.8">
     <concat destfile="${derby.jar.dir}/lists/dnc.properties" append="true">
       <fileset file="${basedir}/tools/jar/dnc.1.8.properties" />
     </concat>
@@ -2462,7 +2439,7 @@
          </junit>
   </target>
 	  
-  <target name="junit-jdbc4" depends="checkVMLevel,junit-init">
+  <target name="junit-jdbc4" depends="junit-init">
     <antcall target="junit-jdbc4-workhorse"/>
   </target>
 
@@ -2496,7 +2473,7 @@
   </target>
 
   <!-- low memory suite runs with 16MB heap  -->
-  <target name="junit-lowmem"  depends="checkVMLevel,junit-init" if="vmLevelIsAtLeast1.5">
+  <target name="junit-lowmem"  depends="junit-init">
   	 <junit printsummary="on"
            fork="yes" forkmode="perTest"
            jvm="${derby.junit.jvm}" maxmemory="16m"
@@ -2523,8 +2500,8 @@
       </junit>	
   </target>
 
-  <!-- Runs Derby's JMX tests if the required VM level (1.5 or higher) is detected -->
-  <target name="junit-jmx" depends="checkVMLevel,junit-init" if="vmLevelIsAtLeast1.5">
+  <!-- Runs Derby's JMX tests -->
+  <target name="junit-jmx" depends="junit-init">
     <junit  printsummary="on"
             fork="yes" forkmode="once"
             showoutput="yes"

Modified: db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/DiskLayoutTaglet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/DiskLayoutTaglet.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/DiskLayoutTaglet.java (original)
+++ db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/DiskLayoutTaglet.java Sun
Oct 29 21:01:10 2017
@@ -21,13 +21,26 @@
 
 package org.apache.derbyBuild.javadoc;
 
-import com.sun.tools.doclets.Taglet;
-import com.sun.javadoc.*;
+import jdk.javadoc.doclet.Taglet;
+import com.sun.source.doctree.DocTree;
+import com.sun.source.doctree.TextTree;
+import com.sun.source.doctree.UnknownBlockTagTree;
+import com.sun.source.doctree.UnknownInlineTagTree;
+import com.sun.source.util.SimpleDocTreeVisitor;
+import java.util.EnumSet;
+import java.util.List;
 import java.util.Map;
+import java.util.Set;
+import javax.lang.model.element.Element;
 
-public class DiskLayoutTaglet implements Taglet {
-    private String NAME = "derby.diskLayout";
-    private String ROWNAME = "Disk Layout";
+public class DiskLayoutTaglet implements Taglet
+{
+    private static final String NAME = "derby.diskLayout";
+    private static final String ROWNAME = "Disk Layout";
+    private static final EnumSet<Location> allowedSet = EnumSet.allOf(Location.class);
+
+    private static final DerbyDocTreeVisitor dummyVisitor = new DerbyDocTreeVisitor();
+  
     /**
      * Returns the name of this taglet
      * @return NAME
@@ -36,53 +49,10 @@ public class DiskLayoutTaglet implements
         return NAME;
     }
 
-    /**
-     * disk_layout not expected to be used in field documentation.
-     * @return false
-     */
-    public boolean inField() {
-        return false;
-    }
-
-    /**
-     * disk_layout not expected to be used in constructor documentation.
-     * @return false
-     */
-    public boolean inConstructor() {
-        return false;
-    }
-
-    /**
-     * disk_layout not expected to be used in constructor documentation.
-     * @return false
-     */
-    public boolean inMethod() {
-        return false;
-    }
-
-    /**
-     * disk_layout can be used in overview documentation.
-     * @return true
-     */
-    public boolean inOverview() {
-        return true;
-    }
-
-    /**
-     * disk_layout can be used in package documentation.
-     * @return true
-     */
-    public boolean inPackage() {
-        return true;
-    }
-
-    /**
-     * disk_layout can be used in type documentation.
-     * @return true
-     */
-    public boolean inType() {
-        return true;
-    }
+    @Override
+    public Set<Taglet.Location> getAllowedLocations() {
+        return allowedSet;
+     }
 
     /**
      * disk_layout is not an inline tag.
@@ -93,45 +63,60 @@ public class DiskLayoutTaglet implements
     }
 
     /**
-     * Register this Taglet.
-     * @param tagletMap
-     */
-    public static void register(Map<String, Taglet> tagletMap) {
-       DiskLayoutTaglet tag = new DiskLayoutTaglet();
-       Taglet t = (Taglet) tagletMap.get(tag.getName());
-       if (t != null) {
-           tagletMap.remove(tag.getName());
-       }
-       tagletMap.put(tag.getName(), tag);
-    }
-
-    /**
      * Embed the contents of the disk_layout tag as a row
      * in the disk format table. Close the table.
      * @param tag The tag to embed to the disk format the table.
      */
-    public String toString(Tag tag) {
+    public String toString(DocTree tag) {
         return "<tr><td>" + ROWNAME + "</td>"
-               + "<td>" + tag.text() + "</td></tr></table>\n";
+          + "<td>" + getText(tag) + "</td></tr></table>\n";
     }
 
     /**
      * Embed multiple disk_layout tags as cells in the disk format table.
      * Close the table.
      * @param tags An array of tags to add to the disk format table.
+     * @param element the element to which the enclosing comment belongs
      */
-    public String toString(Tag[] tags) {
-        if (tags.length == 0) {
+    public String toString(List<? extends DocTree> tags, Element element)
+    {
+        if ((tags == null) || (tags.size() == 0)) {
             return null;
         }
         String result = "<tr><td>" + ROWNAME + "</td><td>" ;
-        for (int i = 0; i < tags.length; i++) {
+        for (int i = 0; i < tags.size(); i++) {
             if (i > 0) {
                 result += "";
             }
-            result += tags[i].text() + "</td></tr>";
+            result += getText(tags.get(i)) + "</td></tr>";
         }
         return result + "</table></dt>\n";
     }
+
+    static class DerbyDocTreeVisitor extends SimpleDocTreeVisitor<String, Void>
+    {
+        @Override
+        public String visitUnknownBlockTag(UnknownBlockTagTree node, Void p)
+        {
+            for (DocTree dt : node.getContent()) { return dt.accept(this, null); }
+            return "";
+        }
+
+        @Override
+        public String visitUnknownInlineTag(UnknownInlineTagTree node, Void p)
+        {
+            for (DocTree dt : node.getContent()) { return dt.accept(this, null); }
+            return "";
+        }
+
+        @Override
+        public String visitText(TextTree node, Void p) { return node.getBody(); }
+
+        @Override
+        protected String defaultAction(DocTree node, Void p) { return ""; }
+    }
+
+    static String getText(DocTree dt) { return dummyVisitor.visit(dt, null); }
+
 }
 

Modified: db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/EndFormatTaglet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/EndFormatTaglet.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/EndFormatTaglet.java (original)
+++ db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/EndFormatTaglet.java Sun
Oct 29 21:01:10 2017
@@ -20,109 +20,53 @@
  */
 package org.apache.derbyBuild.javadoc;
 
-import com.sun.tools.doclets.Taglet;
-import com.sun.javadoc.*;
+import jdk.javadoc.doclet.Taglet;
+import com.sun.source.doctree.DocTree;
+import java.util.EnumSet;
+import java.util.List;
 import java.util.Map;
+import java.util.Set;
+import javax.lang.model.element.Element;
 
 public class EndFormatTaglet implements Taglet {
-    private String NAME = "derby.endFormat";
-    private String ROWNAME = "end_format";
+    private static final String NAME = "derby.endFormat";
+    private static final String ROWNAME = "end_format";
+    private static final EnumSet<Location> allowedSet = EnumSet.allOf(Location.class);
 
     /**
      * Returns the name of this taglet
      * @return NAME
      */
-    public String getName() {
-        return NAME;
-    }
-
-    /**
-     * end_format not expected to be used in field documentation.
-     * @return false
-     */
-    public boolean inField() {
-        return false;
-    }
-
-    /**
-     * end_format not expected to be used in constructor documentation.
-     * @return false
-     */
-    public boolean inConstructor() {
-        return false;
-    }
-
-    /**
-     * end_format not expected to be used in method documentation.
-     * @return false
-     */
-    public boolean inMethod() {
-        return false;
-    }
+    public String getName() { return NAME; }
 
-    /**
-     * end_format can be used in overview documentation.
-     * @return true
-     */
-    public boolean inOverview() {
-        return true;
-    }
-
-    /**
-     * end_format can be used in package documentation.
-     * @return true
-     */
-    public boolean inPackage() {
-        return true;
-    }
-
-    /**
-     * end_format can be used in type documentation.
-     * @return true
-     */
-    public boolean inType() {
-        return true;
-    }
+    @Override
+    public Set<Taglet.Location> getAllowedLocations() { return allowedSet; }
 
     /**
      * end_format is not an inline tag.
      * @return false
      */
-    public boolean isInlineTag() {
-        return false;
-    }
-
-    /**
-     * Register this Taglet.
-     * @param tagletMap
-     */
-    public static void register(Map<String, Taglet> tagletMap) {
-       EndFormatTaglet tag = new EndFormatTaglet();
-       Taglet t = (Taglet) tagletMap.get(tag.getName());
-       if (t != null) {
-           tagletMap.remove(tag.getName());
-       }
-       tagletMap.put(tag.getName(), tag);
-    }
+    public boolean isInlineTag() { return false; }
 
     /**
      * No-op. Not currently used.
      * @param tag The tag to embed to the disk format table.
      */
-    public String toString(Tag tag) {
+    public String toString(DocTree tag) {
         return "";
     }
 
     /**
      * No-op. Not currently used.
      * @param tags An array of tags to add to the disk format table.
+     * @param element the element to which the enclosing comment belongs
      */
-    public String toString(Tag[] tags) {
-        if (tags.length == 0) {
-            return null;
-        }
+    public String toString(List<? extends DocTree> tags, Element element)
+    {
+        if ((tags == null) || (tags.size() == 0)) { return null; }
+        
         String result = "";
-        for (int i = 0; i < tags.length; i++) {
+        for (int i = 0; i < tags.size(); i++) {
             if (i > 0) {
                 result += "";
             }

Modified: db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/FormatIdTaglet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/FormatIdTaglet.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/FormatIdTaglet.java (original)
+++ db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/FormatIdTaglet.java Sun Oct
29 21:01:10 2017
@@ -20,71 +20,28 @@
  */
 package org.apache.derbyBuild.javadoc;
 
-import com.sun.tools.doclets.Taglet;
-import com.sun.javadoc.*;
+import jdk.javadoc.doclet.Taglet;
+import com.sun.source.doctree.DocTree;
+import java.util.EnumSet;
+import java.util.List;
 import java.util.Map;
+import java.util.Set;
+import javax.lang.model.element.Element;
 
 public class FormatIdTaglet implements Taglet {
 
-    private String NAME = "derby.formatId";
-    private String ROWNAME = "Format ID";
+    private static final String NAME = "derby.formatId";
+    private static final String ROWNAME = "Format ID";
+    private static final EnumSet<Location> allowedSet = EnumSet.allOf(Location.class);
 
     /**
      * Returns the name of this taglet
      * @return NAME
      */
-    public String getName() {
-        return NAME;
-    }
+    public String getName() { return NAME; }
 
-    /**
-     * format_id not expected to be used in field documentation.
-     * @return false
-     */
-    public boolean inField() {
-        return false;
-    }
-
-
-    /**
-     * format_id not expected to be used in constructor documentation.
-     * @return false
-     */
-    public boolean inConstructor() {
-        return false;
-    }
-
-    /**
-     * format_id not expected to be used in method documentation.
-     * @return false
-     */
-    public boolean inMethod() {
-        return false;
-    }
-
-    /**
-     * format_id can be used in overview documentation.
-     * @return true
-     */
-    public boolean inOverview() {
-        return true;
-    }
-
-    /**
-     * format_id can be used in package documentation.
-     * @return true
-     */
-    public boolean inPackage() {
-        return true;
-    }
-
-    /**
-     * format_id can be used in type documentation.
-     * @return true
-     */
-    public boolean inType() {
-        return true;
-    }
+    @Override
+    public Set<Taglet.Location> getAllowedLocations() { return allowedSet; }
 
     /**
      * format_id is not an inline tag.
@@ -95,42 +52,31 @@ public class FormatIdTaglet implements T
     }
 
     /**
-     * Register this Taglet.
-     * @param tagletMap
-     */
-    public static void register(Map<String, Taglet> tagletMap) {
-       FormatIdTaglet tag = new FormatIdTaglet();
-       Taglet t = (Taglet) tagletMap.get(tag.getName());
-       if (t != null) {
-           tagletMap.remove(tag.getName());
-       }
-       tagletMap.put(tag.getName(), tag);
-    }
-
-    /**
      * Embed the contents of the format_id tag as a row
      * in the disk format table.
      * @param tag The tag to embed to the disk format the table.
      */
-    public String toString(Tag tag) {
+    public String toString(DocTree tag) {
         return "\n<dt><table cellpadding=2 cellspacing=2><tr><td>"
+ ROWNAME + "</td>"
-               + "<td>" + tag.text() + "</td></tr>\n";
+          + "<td>" + DiskLayoutTaglet.getText(tag) + "</td></tr>\n";
     }
 
     /**
      * Embed multiple format_id tags as cells in the disk format table.
      * @param tags An array of tags to add to the disk format table.
+     * @param element the element to which the enclosing comment belongs
      */
-    public String toString(Tag[] tags) {
-        if (tags.length == 0) {
+    public String toString(List<? extends DocTree> tags, Element element)
+    {
+        if ((tags == null) || (tags.size() == 0)) {
             return null;
         }
         String result = "<table cellpadding=2 cellspacing=2><tr><td>" +
ROWNAME + "</td><td>" ;
-        for (int i = 0; i < tags.length; i++) {
+        for (int i = 0; i < tags.size(); i++) {
             if (i > 0) {
                 result += "";
             }
-            result += tags[i].text() + "</td></tr>";
+            result += DiskLayoutTaglet.getText(tags.get(i)) + "</td></tr>";
         }
         return result + "\n";
     }

Modified: db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/PurposeTaglet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/PurposeTaglet.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/PurposeTaglet.java (original)
+++ db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/PurposeTaglet.java Sun Oct
29 21:01:10 2017
@@ -20,70 +20,28 @@
  */
 package org.apache.derbyBuild.javadoc;
 
-import com.sun.tools.doclets.Taglet;
-import com.sun.javadoc.*;
+import jdk.javadoc.doclet.Taglet;
+import com.sun.source.doctree.DocTree;
+import java.util.EnumSet;
+import java.util.List;
 import java.util.Map;
+import java.util.Set;
+import javax.lang.model.element.Element;
 
 public class PurposeTaglet implements Taglet {
 
-    private String NAME = "derby.purpose";
-    private String ROWNAME = "Purpose";
+    private static final String NAME = "derby.purpose";
+    private static final String ROWNAME = "Purpose";
+    private static final EnumSet<Location> allowedSet = EnumSet.allOf(Location.class);
 
     /**
      * Returns the name of this taglet
      * @return NAME
      */
-    public String getName() {
-        return NAME;
-    }
-
-    /**
-     * purpose not expected to be used in field documentation.
-     * @return false
-     */
-    public boolean inField() {
-        return false;
-    }
-
-    /**
-     * purpose not expected to be used in constructor documentation.
-     * @return false
-     */
-    public boolean inConstructor() {
-        return false;
-    }
-
-    /**
-     * purpose not expected to be used in method documentation.
-     * @return false
-     */
-    public boolean inMethod() {
-        return false;
-    }
+    public String getName() { return NAME; }
 
-    /**
-     * purpose can be used in overview documentation.
-     * @return true
-     */
-    public boolean inOverview() {
-        return true;
-    }
-
-    /**
-     * purpose can be used in package documentation.
-     * @return true
-     */
-    public boolean inPackage() {
-        return true;
-    }
-
-    /**
-     * purpose can be used in type documentation.
-     * @return true
-     */
-    public boolean inType() {
-        return true;
-    }
+    @Override
+    public Set<Taglet.Location> getAllowedLocations() { return allowedSet; }
 
     /**
      * purpose is not an inline tag.
@@ -94,42 +52,31 @@ public class PurposeTaglet implements Ta
     }
 
     /**
-     * Register this Taglet.
-     * @param tagletMap
-     */
-    public static void register(Map<String, Taglet> tagletMap) {
-       PurposeTaglet tag = new PurposeTaglet();
-       Taglet t = (Taglet) tagletMap.get(tag.getName());
-       if (t != null) {
-           tagletMap.remove(tag.getName());
-       }
-       tagletMap.put(tag.getName(), tag);
-    }
-
-    /**
      * Embed the contents of the purpose tag as a row
      * in the disk format table.
      * @param tag The tag to embed to the disk format the table.
      */
-    public String toString(Tag tag) {
+    public String toString(DocTree tag) {
         return "<tr><td>" + ROWNAME + "</td>"
-               + "<td>" + tag.text() + "</td></tr>\n";
+          + "<td>" + DiskLayoutTaglet.getText(tag) + "</td></tr>\n";
     }
 
     /**
      * Embed multiple purpose tags as cells in the disk format table.
      * @param tags An array of tags to add to the disk format table.
+     * @param element the element to which the enclosing comment belongs
      */
-    public String toString(Tag[] tags) {
-        if (tags.length == 0) {
+    public String toString(List<? extends DocTree> tags, Element element)
+    {
+        if ((tags == null) || (tags.size() == 0)) {
             return null;
         }
         String result = "<tr><td>" + ROWNAME + "</td><td>";
-        for (int i = 0; i < tags.length; i++) {
+        for (int i = 0; i < tags.size(); i++) {
             if (i > 0) {
                 result += "";
             }
-            result += tags[i].text() + "</td></tr>";
+            result += "<tr><td>" + DiskLayoutTaglet.getText(tags.get(i)) + "</td></tr>";
         }
         return result + "\n";
     }

Modified: db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/UpgradeTaglet.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/UpgradeTaglet.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/UpgradeTaglet.java (original)
+++ db/derby/code/trunk/java/build/org/apache/derbyBuild/javadoc/UpgradeTaglet.java Sun Oct
29 21:01:10 2017
@@ -21,69 +21,27 @@
 
 package org.apache.derbyBuild.javadoc;
 
-import com.sun.tools.doclets.Taglet;
-import com.sun.javadoc.*;
+import jdk.javadoc.doclet.Taglet;
+import com.sun.source.doctree.DocTree;
+import java.util.EnumSet;
+import java.util.List;
 import java.util.Map;
+import java.util.Set;
+import javax.lang.model.element.Element;
 
 public class UpgradeTaglet implements Taglet {
-    private String NAME = "derby.upgrade";
-    private String ROWNAME = "Upgrade";
+    private static final String NAME = "derby.upgrade";
+    private static final String ROWNAME = "Upgrade";
+    private static final EnumSet<Location> allowedSet = EnumSet.allOf(Location.class);
 
     /**
      * Returns the name of this taglet
      * @return NAME
      */
-    public String getName() {
-        return NAME;
-    }
-
-    /**
-     * upgrade not expected to be used in field documentation.
-     * @return false
-     */
-    public boolean inField() {
-        return false;
-    }
-
-    /**
-     * upgrade not expected to be used in constructor documentation.
-     * @return false
-     */
-    public boolean inConstructor() {
-        return false;
-    }
-
-    /**
-     * upgrade not expected to be used in method documentation.
-     * @return false
-     */
-    public boolean inMethod() {
-        return false;
-    }
+    public String getName() { return NAME; }
 
-    /**
-     * upgrade can be used in overview documentation.
-     * @return true
-     */
-    public boolean inOverview() {
-        return true;
-    }
-
-    /**
-     * upgrade can be used in package documentation.
-     * @return true
-     */
-    public boolean inPackage() {
-        return true;
-    }
-
-    /**
-     * upgrade can be used in type documentation.
-     * @return true
-     */
-    public boolean inType() {
-        return true;
-    }
+    @Override
+    public Set<Taglet.Location> getAllowedLocations() { return allowedSet; }
 
     /**
      * upgrade is not an inline tag.
@@ -94,42 +52,31 @@ public class UpgradeTaglet implements Ta
     }
 
     /**
-     * Register this Taglet.
-     * @param tagletMap
-     */
-    public static void register(Map<String, Taglet> tagletMap) {
-       UpgradeTaglet tag = new UpgradeTaglet();
-       Taglet t = (Taglet) tagletMap.get(tag.getName());
-       if (t != null) {
-           tagletMap.remove(tag.getName());
-       }
-       tagletMap.put(tag.getName(), tag);
-    }
-
-    /**
      * Embed the contents of the upgrade tag as a row
      * in the disk format table.
      * @param tag The tag to embed to the disk format the table.
      */
-    public String toString(Tag tag) {
+    public String toString(DocTree tag) {
         return "<tr><td>" + ROWNAME + "</td>"
-               + "<td>" + tag.text() + "</td></tr>\n";
+          + "<td>" + DiskLayoutTaglet.getText(tag) + "</td></tr>\n";
     }
 
     /**
      * Embed multiple upgrade tags as cells in the disk format table.
      * @param tags An array of tags to add to the disk format table.
+     * @param element the element to which the enclosing comment belongs
      */
-    public String toString(Tag[] tags) {
-        if (tags.length == 0) {
+    public String toString(List<? extends DocTree> tags, Element element)
+    {
+        if ((tags == null) || (tags.size() == 0)) {
             return null;
         }
         String result = "<tr><td>" + ROWNAME + "</td><td>";
-        for (int i = 0; i < tags.length; i++) {
+        for (int i = 0; i < tags.size(); i++) {
             if (i > 0) {
                 result += "";
             }
-            result += tags[i].text() + "</td></tr>";
+            result += "<tr><td>" + DiskLayoutTaglet.getText(tags.get(i)) + "</td></tr>";
         }
         return result + "\n";
     }

Modified: db/derby/code/trunk/java/client/build.xml
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/build.xml?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/build.xml (original)
+++ db/derby/code/trunk/java/client/build.xml Sun Oct 29 21:01:10 2017
@@ -86,11 +86,7 @@
 </target> 
   
 <!-- default target  -->
-  <target name="client" depends="checkVMLevel, compile, compile_jdbc42"/>
-
-  <target name="checkVMLevel">
-    <available classname="java.sql.SQLType" property="vmLevelIsAtLeast1.8" value="true"/>
-  </target>
+  <target name="client" depends="compile, compile_jdbc42"/>
 
 </project>
 

Modified: db/derby/code/trunk/java/client/org/apache/derby/jdbc/BasicClientXADataSource40.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/jdbc/BasicClientXADataSource40.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/jdbc/BasicClientXADataSource40.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/jdbc/BasicClientXADataSource40.java Sun
Oct 29 21:01:10 2017
@@ -21,7 +21,9 @@
 
 package org.apache.derby.jdbc;
 
+import java.sql.ShardingKeyBuilder;
 import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import javax.sql.XAConnection;
 import javax.sql.XADataSource;
 
@@ -56,4 +58,11 @@ public class BasicClientXADataSource40
 
         return getXAConnectionMinion(user, password);
     }
+
+    /** Added by Java 9 */
+    public ShardingKeyBuilder createShardingKeyBuilder()
+        throws SQLException
+    {
+        throw new java.sql.SQLFeatureNotSupportedException();
+    }
 }

Modified: db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource.java Sun Oct
29 21:01:10 2017
@@ -21,6 +21,9 @@
 
 package org.apache.derby.jdbc;
 
+import java.sql.ShardingKeyBuilder;
+import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import java.sql.SQLException;
 import javax.sql.XAConnection;
 
@@ -66,4 +69,11 @@ public class ClientXADataSource
     public XAConnection getXAConnection(String user, String password) throws SQLException
{
         return getXAConnectionMinion(user, password);
     }    
+
+    /** Added by Java 9 */
+    public ShardingKeyBuilder createShardingKeyBuilder()
+        throws SQLException
+    {
+        throw new java.sql.SQLFeatureNotSupportedException();
+    }
 }

Modified: db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource40.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource40.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource40.java (original)
+++ db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSource40.java Sun Oct
29 21:01:10 2017
@@ -21,6 +21,9 @@
 
 package org.apache.derby.jdbc;
 
+import java.sql.ShardingKeyBuilder;
+import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import javax.sql.XADataSource;
 
 /**
@@ -35,5 +38,12 @@ import javax.sql.XADataSource;
 public class ClientXADataSource40 extends ClientXADataSource
     implements XADataSource /* compile-time check for 4.1 extension */
 {
-   private static final long serialVersionUID = -3463444509507830926L;
+    private static final long serialVersionUID = -3463444509507830926L;
+
+    /** Added by Java 9 */
+    public ShardingKeyBuilder createShardingKeyBuilder()
+        throws SQLException
+    {
+        throw new java.sql.SQLFeatureNotSupportedException();
+    }
 }

Modified: db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSourceInterface.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSourceInterface.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSourceInterface.java
(original)
+++ db/derby/code/trunk/java/client/org/apache/derby/jdbc/ClientXADataSourceInterface.java
Sun Oct 29 21:01:10 2017
@@ -21,6 +21,9 @@
 
 package org.apache.derby.jdbc;
 
+import java.sql.ShardingKeyBuilder;
+import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
 import javax.sql.XADataSource;
 
 /**
@@ -28,4 +31,11 @@ import javax.sql.XADataSource;
  */
 public interface ClientXADataSourceInterface
     extends ClientDataSourceInterface, XADataSource {
+
+    /** Added by Java 9 */
+    public default ShardingKeyBuilder createShardingKeyBuilder()
+        throws SQLException
+    {
+        throw new java.sql.SQLFeatureNotSupportedException();
+    }
 }

Modified: db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/build.xml
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/build.xml?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/build.xml (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/iapi/jdbc/build.xml Sun Oct 29 21:01:10
2017
@@ -37,7 +37,7 @@
 
 <!-- Targets -->
 
-  <target name="compile" depends="checkVMLevel, compile_jdbc4, compile_jdbc42"/>
+  <target name="compile" depends="compile_jdbc4, compile_jdbc42"/>
 
   <target name="compile_jdbc4" >
     <javac
@@ -58,7 +58,7 @@
     </javac>
   </target> 
 
-  <target name="compile_jdbc42" if="vmLevelIsAtLeast1.8">
+  <target name="compile_jdbc42">
       <javac
           source="${min.version}"
           target="${min.version}"
@@ -76,9 +76,6 @@
       </javac>
   </target> 
 
-  <target name="checkVMLevel">
-    <available classname="java.sql.SQLType" property="vmLevelIsAtLeast1.8" value="true"/>
-  </target>
 
 </project>
 

Modified: db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/build.xml
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/build.xml?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/build.xml (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/impl/jdbc/build.xml Sun Oct 29 21:01:10
2017
@@ -34,7 +34,7 @@
 
 <!-- Targets -->
 
-  <target name="compile" depends="checkVMLevel, compile_jdbc4, compile_jdbc42"/>
+  <target name="compile" depends="compile_jdbc4, compile_jdbc42"/>
 
   <target name="compile_jdbc4">
 	    <javac
@@ -58,7 +58,7 @@
   </target>
 
 
-<target name="compile_jdbc42" depends="compile_jdbc4"  if="vmLevelIsAtLeast1.8">
+<target name="compile_jdbc42" depends="compile_jdbc4">
     <javac
       source="${min.version}"
       target="${min.version}"
@@ -77,9 +77,6 @@
     </javac>
 </target>
 
-<target name="checkVMLevel">
-  <available classname="java.sql.SQLType" property="vmLevelIsAtLeast1.8" value="true"/>
-</target>
 
 </project>
 

Modified: db/derby/code/trunk/java/engine/org/apache/derby/jdbc/EmbeddedXADataSourceInterface.java
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/jdbc/EmbeddedXADataSourceInterface.java?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/jdbc/EmbeddedXADataSourceInterface.java
(original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/jdbc/EmbeddedXADataSourceInterface.java
Sun Oct 29 21:01:10 2017
@@ -21,12 +21,24 @@
 
 package org.apache.derby.jdbc;
 
+import java.sql.ShardingKeyBuilder;
+import java.sql.SQLException;
+import java.sql.SQLFeatureNotSupportedException;
+
 import org.apache.derby.iapi.jdbc.ResourceAdapter;
 
 
 /**
  * Common interface of Derby embedded XA data sources.
  */
-public interface EmbeddedXADataSourceInterface extends EmbeddedDataSourceInterface, javax.sql.XADataSource
{
-    ResourceAdapter getResourceAdapter();
+public interface EmbeddedXADataSourceInterface extends EmbeddedDataSourceInterface, javax.sql.XADataSource
+{
+    public ResourceAdapter getResourceAdapter();
+
+    /** Added by Java 9 */
+    public default ShardingKeyBuilder createShardingKeyBuilder()
+        throws SQLException
+    {
+        throw new java.sql.SQLFeatureNotSupportedException();
+    }
 }

Modified: db/derby/code/trunk/java/engine/org/apache/derby/jdbc/build.xml
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/engine/org/apache/derby/jdbc/build.xml?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/engine/org/apache/derby/jdbc/build.xml (original)
+++ db/derby/code/trunk/java/engine/org/apache/derby/jdbc/build.xml Sun Oct 29 21:01:10 2017
@@ -33,7 +33,7 @@
   <property file="${properties.dir}/compilepath.properties"/>
 
 <!-- Targets -->
-  <target name="jdbc" depends="checkVMLevel,compile_jdbc4,compile_jdbc42"/>
+  <target name="jdbc" depends="compile_jdbc4,compile_jdbc42"/>
 
   <target name="compile_jdbc4" >
     <javac
@@ -54,7 +54,7 @@
     </javac>
   </target>
 
-  <target name="compile_jdbc42" if="vmLevelIsAtLeast1.8">
+  <target name="compile_jdbc42" >
     <javac
       source="${min.version}"
       target="${min.version}"
@@ -72,9 +72,5 @@
     </javac>
   </target> 
 
-  <target name="checkVMLevel">
-    <available classname="java.sql.SQLType" property="vmLevelIsAtLeast1.8" value="true"/>
-  </target>
-
 </project>
 

Modified: db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/build.xml
URL: http://svn.apache.org/viewvc/db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/build.xml?rev=1813709&r1=1813708&r2=1813709&view=diff
==============================================================================
--- db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/build.xml
(original)
+++ db/derby/code/trunk/java/testing/org/apache/derbyTesting/functionTests/tests/jdbc4/build.xml
Sun Oct 29 21:01:10 2017
@@ -68,7 +68,7 @@
         </javac>
     </target>	
 
-    <target name="compile_jdbc42" if="vmLevelIsAtLeast1.8">
+    <target name="compile_jdbc42">
         <javac
           source="${min.version}"
           target="${min.version}"
@@ -96,10 +96,6 @@
         </copy>
     </target>
     
-    <target name="compile" depends="checkVMLevel,compile_jdbc4,compile_jdbc42"/>
-
-    <target name="checkVMLevel">
-      <available classname="java.sql.SQLType" property="vmLevelIsAtLeast1.8" value="true"/>
-    </target>
+    <target name="compile" depends="compile_jdbc4,compile_jdbc42"/>
 
 </project>



Mime
View raw message