Author: desruisseaux
Date: Sat Apr  1 00:15:16 2017
New Revision: 1789765

URL: http://svn.apache.org/viewvc?rev=1789765&view=rev
Log:
Update NetBeans project configuration for JDK9.

Removed:
    sis/branches/JDK9/ide-project/NetBeans/nbproject/build-impl.xml~
Modified:
    sis/branches/JDK9/ide-project/NetBeans/nbproject/build-impl.xml
    sis/branches/JDK9/ide-project/NetBeans/nbproject/genfiles.properties
    sis/branches/JDK9/ide-project/NetBeans/nbproject/project.properties
    sis/branches/JDK9/ide-project/NetBeans/nbproject/project.xml

Modified: sis/branches/JDK9/ide-project/NetBeans/nbproject/build-impl.xml
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK9/ide-project/NetBeans/nbproject/build-impl.xml?rev=1789765&r1=1789764&r2=1789765&view=diff
==============================================================================
--- sis/branches/JDK9/ide-project/NetBeans/nbproject/build-impl.xml (original)
+++ sis/branches/JDK9/ide-project/NetBeans/nbproject/build-impl.xml Sat Apr  1 
00:15:16 2017
@@ -53,8 +53,107 @@ is divided into following sections:
         <property file="nbproject/configs/${config}.properties"/>
         <property file="nbproject/project.properties"/>
     </target>
-    <target 
depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property"
 name="-do-init">
-        <property name="platform.java" value="${java.home}/bin/java"/>
+    <target name="-init-modules-supported">
+        <condition property="modules.supported.internal" value="true">
+            <not>
+                <matches pattern="1\.[0-8](\..*)?" string="${javac.source}"/>
+            </not>
+        </condition>
+    </target>
+    <target depends="-init-modules-supported" if="modules.supported.internal" 
name="-init-macrodef-modulename">
+        <macrodef name="modulename" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
+            <attribute name="property"/>
+            <attribute name="sourcepath"/>
+            <sequential>
+                <loadresource property="@{property}" quiet="true">
+                    <javaresource classpath="@{sourcepath}" 
name="module-info.java" parentFirst="false"/>
+                    <filterchain>
+                        <stripjavacomments/>
+                        <linecontainsregexp>
+                            <regexp pattern="module .* \{"/>
+                        </linecontainsregexp>
+                        <tokenfilter>
+                            <linetokenizer/>
+                            <replaceregex flags="s" 
pattern="(\s*module\s+)(\S*)(\s*\{.*)" replace="\2"/>
+                        </tokenfilter>
+                        <striplinebreaks/>
+                    </filterchain>
+                </loadresource>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-modules-supported,-init-macrodef-modulename" 
if="modules.supported.internal" name="-init-source-module-properties">
+        <fail message="Java 9 support requires Ant 1.10.0 or higher.">
+            <condition>
+                <not>
+                    <antversion atleast="1.10.0"/>
+                </not>
+            </condition>
+        </fail>
+        <j2seproject3:modulename property="module.name" 
sourcepath="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.earth-obs.dir}:${src.geotiff.dir}:${src.netcdf.dir}:${src.shapefile.dir}:${src.xmlstore.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.ref-by-id.dir}:${src.metadata.dir}:${src.utility.dir}:${src.fra-profile.dir}"/>
+        <condition property="named.module.internal">
+            <and>
+                <isset property="module.name"/>
+                <length length="0" string="${module.name}" when="greater"/>
+            </and>
+        </condition>
+        <condition property="unnamed.module.internal">
+            <not>
+                <isset property="named.module.internal"/>
+            </not>
+        </condition>
+        <property name="javac.modulepath" value=""/>
+        <property name="run.modulepath" value="${javac.modulepath}"/>
+        <property name="module.build.classes.dir" 
value="${build.classes.dir}"/>
+        <property name="debug.modulepath" value="${run.modulepath}"/>
+        <property name="javac.upgrademodulepath" value=""/>
+        <property name="run.upgrademodulepath" 
value="${javac.upgrademodulepath}"/>
+        <condition else="" property="javac.systemmodulepath.cmd.line.arg" 
value="--system '${javac.systemmodulepath}'">
+            <and>
+                <isset property="javac.systemmodulepath"/>
+                <length length="0" string="${javac.systemmodulepath}" 
when="greater"/>
+            </and>
+        </condition>
+        <property name="module.name" value=""/>
+    </target>
+    <target 
depends="-pre-init,-init-private,-init-user,-init-project,-init-macrodef-property,-init-modules-supported"
 name="-do-init">
+        <j2seproject1:property name="platform.home" 
value="platforms.${platform.active}.home"/>
+        <j2seproject1:property name="platform.bootcp" 
value="platforms.${platform.active}.bootclasspath"/>
+        <j2seproject1:property name="platform.compiler" 
value="platforms.${platform.active}.compile"/>
+        <j2seproject1:property name="platform.javac.tmp" 
value="platforms.${platform.active}.javac"/>
+        <condition property="platform.javac" 
value="${platform.home}/bin/javac">
+            <equals arg1="${platform.javac.tmp}" 
arg2="$${platforms.${platform.active}.javac}"/>
+        </condition>
+        <property name="platform.javac" value="${platform.javac.tmp}"/>
+        <j2seproject1:property name="platform.java.tmp" 
value="platforms.${platform.active}.java"/>
+        <condition property="platform.java" value="${platform.home}/bin/java">
+            <equals arg1="${platform.java.tmp}" 
arg2="$${platforms.${platform.active}.java}"/>
+        </condition>
+        <property name="platform.java" value="${platform.java.tmp}"/>
+        <j2seproject1:property name="platform.javadoc.tmp" 
value="platforms.${platform.active}.javadoc"/>
+        <condition property="platform.javadoc" 
value="${platform.home}/bin/javadoc">
+            <equals arg1="${platform.javadoc.tmp}" 
arg2="$${platforms.${platform.active}.javadoc}"/>
+        </condition>
+        <property name="platform.javadoc" value="${platform.javadoc.tmp}"/>
+        <condition property="platform.invalid" value="true">
+            <or>
+                <contains string="${platform.javac}" 
substring="$${platforms."/>
+                <contains string="${platform.java}" substring="$${platforms."/>
+                <contains string="${platform.javadoc}" 
substring="$${platforms."/>
+            </or>
+        </condition>
+        <fail unless="platform.home">Must set platform.home</fail>
+        <fail unless="platform.bootcp">Must set platform.bootcp</fail>
+        <fail unless="platform.java">Must set platform.java</fail>
+        <fail unless="platform.javac">Must set platform.javac</fail>
+        <fail if="platform.invalid">
+ The J2SE Platform is not correctly set up.
+ Your active platform is: ${platform.active}, but the corresponding property 
"platforms.${platform.active}.home" is not found in the project's properties 
files. 
+ Either open the project in the IDE and setup the Platform with the same name 
or add it manually.
+ For example like this:
+     ant -Duser.properties.file=&lt;path_to_property_file&gt; jar (where you 
put the property "platforms.${platform.active}.home" in a .properties file)
+  or ant -Dplatforms.${platform.active}.home=&lt;path_to_JDK_home&gt; jar 
(where no properties file is used) 
+  </fail>
         <available file="${manifest.file}" property="manifest.available"/>
         <condition property="splashscreen.available">
             <and>
@@ -76,7 +175,9 @@ is divided into following sections:
             <and>
                 <isset property="javac.profile"/>
                 <length length="0" string="${javac.profile}" when="greater"/>
-                <matches pattern="((1\.[89])|9)(\..*)?" 
string="${javac.source}"/>
+                <not>
+                    <matches pattern="1\.[0-7](\..*)?" 
string="${javac.source}"/>
+                </not>
             </and>
         </condition>
         <condition property="do.archive">
@@ -94,6 +195,9 @@ is divided into following sections:
                 <not>
                     <istrue value="${mkdist.disabled}"/>
                 </not>
+                <not>
+                    <istrue value="${modules.supported.internal}"/>
+                </not>
             </and>
         </condition>
         <condition property="do.archive+manifest.available">
@@ -211,20 +315,6 @@ is divided into following sections:
         <condition else="" property="javac.profile.cmd.line.arg" 
value="-profile ${javac.profile}">
             <isset property="profile.available"/>
         </condition>
-        <condition else="false" property="jdkBug6558476">
-            <and>
-                <matches pattern="1\.[56]" 
string="${java.specification.version}"/>
-                <not>
-                    <os family="unix"/>
-                </not>
-            </and>
-        </condition>
-        <condition else="false" property="javac.fork">
-            <or>
-                <istrue value="${jdkBug6558476}"/>
-                <istrue value="${javac.external.vm}"/>
-            </or>
-        </condition>
         <property name="jar.index" value="false"/>
         <property name="jar.index.metainf" value="${jar.index}"/>
         <property name="copylibs.rebase" value="true"/>
@@ -304,11 +394,13 @@ is divided into following sections:
             </sequential>
         </macrodef>
     </target>
-    <target depends="-init-ap-cmdline-properties" if="ap.supported.internal" 
name="-init-macrodef-javac-with-processors">
+    <target 
depends="-init-ap-cmdline-properties,-init-source-module-properties" 
if="modules.supported.internal" name="-init-macrodef-javac-with-module">
         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3";>
             <attribute 
default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.earth-obs.dir}:${src.geotiff.dir}:${src.netcdf.dir}:${src.shapefile.dir}:${src.xmlstore.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.ref-by-id.dir}:${src.metadata.dir}:${src.utility.dir}:${src.fra-profile.dir}"
 name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
+            <attribute default="${javac.modulepath}" name="modulepath"/>
+            <attribute default="${javac.upgrademodulepath}" 
name="upgrademodulepath"/>
             <attribute default="${javac.processorpath}" name="processorpath"/>
             <attribute 
default="${build.generated.sources.dir}/ap-source-output" 
name="apgeneratedsrcdir"/>
             <attribute default="${includes}" name="includes"/>
@@ -321,7 +413,56 @@ is divided into following sections:
                 <property location="${build.dir}/empty" name="empty.dir"/>
                 <mkdir dir="${empty.dir}"/>
                 <mkdir dir="@{apgeneratedsrcdir}"/>
-                <javac debug="@{debug}" deprecation="${javac.deprecation}" 
destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" 
fork="${javac.fork}" includeantruntime="false" includes="@{includes}" 
source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" 
target="${javac.target}" tempdir="${java.io.tmpdir}">
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" 
destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" 
executable="${platform.javac}" fork="yes" includeantruntime="false" 
includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" 
srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
+                    <src>
+                        <dirset dir="@{gensrcdir}" erroronmissingdir="false">
+                            <include name="*"/>
+                        </dirset>
+                    </src>
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <modulepath>
+                        <path path="@{modulepath}"/>
+                    </modulepath>
+                    <upgrademodulepath>
+                        <path path="@{upgrademodulepath}"/>
+                    </upgrademodulepath>
+                    <compilerarg 
line="${javac.systemmodulepath.cmd.line.arg}"/>
+                    <compilerarg line="${javac.profile.cmd.line.arg}"/>
+                    <compilerarg line="${javac.compilerargs}"/>
+                    <compilerarg value="-processorpath"/>
+                    <compilerarg path="@{processorpath}:${empty.dir}"/>
+                    <compilerarg line="${ap.processors.internal}"/>
+                    <compilerarg 
line="${annotation.processing.processor.options}"/>
+                    <compilerarg value="-s"/>
+                    <compilerarg path="@{apgeneratedsrcdir}"/>
+                    <compilerarg line="${ap.proc.none.internal}"/>
+                    <customize/>
+                </javac>
+            </sequential>
+        </macrodef>
+    </target>
+    <target 
depends="-init-ap-cmdline-properties,-init-source-module-properties" 
if="ap.supported.internal" name="-init-macrodef-javac-with-processors" 
unless="modules.supported.internal">
+        <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3";>
+            <attribute 
default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.earth-obs.dir}:${src.geotiff.dir}:${src.netcdf.dir}:${src.shapefile.dir}:${src.xmlstore.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.ref-by-id.dir}:${src.metadata.dir}:${src.utility.dir}:${src.fra-profile.dir}"
 name="srcdir"/>
+            <attribute default="${build.classes.dir}" name="destdir"/>
+            <attribute default="${javac.classpath}" name="classpath"/>
+            <attribute default="${javac.modulepath}" name="modulepath"/>
+            <attribute default="${javac.upgrademodulepath}" 
name="upgrademodulepath"/>
+            <attribute default="${javac.processorpath}" name="processorpath"/>
+            <attribute 
default="${build.generated.sources.dir}/ap-source-output" 
name="apgeneratedsrcdir"/>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="${javac.debug}" name="debug"/>
+            <attribute default="${empty.dir}" name="sourcepath"/>
+            <attribute default="${empty.dir}" name="gensrcdir"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <property location="${build.dir}/empty" name="empty.dir"/>
+                <mkdir dir="${empty.dir}"/>
+                <mkdir dir="@{apgeneratedsrcdir}"/>
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" 
destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" 
executable="${platform.javac}" fork="yes" includeantruntime="false" 
includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" 
srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
                     <src>
                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
                             <include name="*"/>
@@ -345,11 +486,13 @@ is divided into following sections:
             </sequential>
         </macrodef>
     </target>
-    <target depends="-init-ap-cmdline-properties" 
name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
+    <target 
depends="-init-ap-cmdline-properties,-init-source-module-properties" 
name="-init-macrodef-javac-without-processors" unless="ap.supported.internal">
         <macrodef name="javac" uri="http://www.netbeans.org/ns/j2se-project/3";>
             <attribute 
default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.earth-obs.dir}:${src.geotiff.dir}:${src.netcdf.dir}:${src.shapefile.dir}:${src.xmlstore.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.ref-by-id.dir}:${src.metadata.dir}:${src.utility.dir}:${src.fra-profile.dir}"
 name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
             <attribute default="${javac.classpath}" name="classpath"/>
+            <attribute default="${javac.modulepath}" name="modulepath"/>
+            <attribute default="${javac.upgrademodulepath}" 
name="upgrademodulepath"/>
             <attribute default="${javac.processorpath}" name="processorpath"/>
             <attribute 
default="${build.generated.sources.dir}/ap-source-output" 
name="apgeneratedsrcdir"/>
             <attribute default="${includes}" name="includes"/>
@@ -361,7 +504,7 @@ is divided into following sections:
             <sequential>
                 <property location="${build.dir}/empty" name="empty.dir"/>
                 <mkdir dir="${empty.dir}"/>
-                <javac debug="@{debug}" deprecation="${javac.deprecation}" 
destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" 
fork="${javac.fork}" includeantruntime="false" includes="@{includes}" 
source="${javac.source}" sourcepath="@{sourcepath}" srcdir="@{srcdir}" 
target="${javac.target}" tempdir="${java.io.tmpdir}">
+                <javac debug="@{debug}" deprecation="${javac.deprecation}" 
destdir="@{destdir}" encoding="${source.encoding}" excludes="@{excludes}" 
executable="${platform.javac}" fork="yes" includeantruntime="false" 
includes="@{includes}" source="${javac.source}" sourcepath="@{sourcepath}" 
srcdir="@{srcdir}" target="${javac.target}" tempdir="${java.io.tmpdir}">
                     <src>
                         <dirset dir="@{gensrcdir}" erroronmissingdir="false">
                             <include name="*"/>
@@ -378,7 +521,7 @@ is divided into following sections:
             </sequential>
         </macrodef>
     </target>
-    <target 
depends="-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors"
 name="-init-macrodef-javac">
+    <target 
depends="-init-macrodef-javac-with-module,-init-macrodef-javac-with-processors,-init-macrodef-javac-without-processors"
 name="-init-macrodef-javac">
         <macrodef name="depend" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
             <attribute 
default="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.earth-obs.dir}:${src.geotiff.dir}:${src.netcdf.dir}:${src.shapefile.dir}:${src.xmlstore.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.ref-by-id.dir}:${src.metadata.dir}:${src.utility.dir}:${src.fra-profile.dir}"
 name="srcdir"/>
             <attribute default="${build.classes.dir}" name="destdir"/>
@@ -433,98 +576,138 @@ is divided into following sections:
         <property name="test.binarytestincludes" value=""/>
         <property name="test.binaryexcludes" value=""/>
     </target>
-    <target if="${nb.junit.single}" name="-init-macrodef-junit-single" 
unless="${nb.junit.batch}">
-        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3";>
+    <target depends="-init-modules-supported" if="modules.supported.internal" 
name="-init-macrodef-junit-prototype-with-module">
+        <macrodef name="junit-prototype" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
             <attribute default="${includes}" name="includes"/>
             <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
+            <element name="customizePrototype" optional="true"/>
             <sequential>
                 <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" 
showoutput="true" tempdir="${build.dir}">
-                    <test methods="@{testmethods}" name="@{testincludes}" 
todir="${build.test.results.dir}"/>
+                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" 
jvm="${platform.java}" showoutput="true" tempdir="${build.dir}">
                     <syspropertyset>
                         <propertyref prefix="test-sys-prop."/>
                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
                     </syspropertyset>
+                    <classpath>
+                        <path path="${run.test.classpath}"/>
+                    </classpath>
+                    <modulepath>
+                        <path path="${run.test.modulepath}"/>
+                    </modulepath>
                     <formatter type="brief" usefile="false"/>
                     <formatter type="xml"/>
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                     <jvmarg value="-ea"/>
-                    <customize/>
+                    <jvmarg line="${run.test.jvmargs}"/>
+                    <customizePrototype/>
                 </junit>
             </sequential>
         </macrodef>
     </target>
-    <target depends="-init-test-properties" if="${nb.junit.batch}" 
name="-init-macrodef-junit-batch" unless="${nb.junit.single}">
-        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3";>
+    <target depends="-init-modules-supported" 
name="-init-macrodef-junit-prototype-without-module" 
unless="modules.supported.internal">
+        <macrodef name="junit-prototype" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
             <attribute default="${includes}" name="includes"/>
             <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
+            <element name="customizePrototype" optional="true"/>
             <sequential>
                 <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" 
showoutput="true" tempdir="${build.dir}">
-                    <batchtest todir="${build.test.results.dir}">
-                        <fileset dir="${test.webapp.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.console.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.earth-obs.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.geotiff.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.netcdf.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.shapefile.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.xmlstore.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.storage.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.feature.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.referencing.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.ref-by-id.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.metadata.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.utility.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.fra-profile.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${build.test.classes.dir}" 
excludes="@{excludes},${excludes},${test.binaryexcludes}" 
includes="${test.binaryincludes}">
-                            <filename name="${test.binarytestincludes}"/>
-                        </fileset>
-                    </batchtest>
+                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" 
jvm="${platform.java}" showoutput="true" tempdir="${build.dir}">
                     <syspropertyset>
                         <propertyref prefix="test-sys-prop."/>
                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
                     </syspropertyset>
+                    <classpath>
+                        <path path="${run.test.classpath}"/>
+                    </classpath>
                     <formatter type="brief" usefile="false"/>
                     <formatter type="xml"/>
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                     <jvmarg value="-ea"/>
-                    <customize/>
+                    <customizePrototype/>
                 </junit>
             </sequential>
         </macrodef>
     </target>
+    <target 
depends="-init-test-properties,-init-macrodef-junit-prototype-with-module,-init-macrodef-junit-prototype-without-module"
 if="${nb.junit.single}" name="-init-macrodef-junit-single" 
unless="${nb.junit.batch}">
+        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3";>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <j2seproject3:junit-prototype>
+                    <customizePrototype>
+                        <test methods="@{testmethods}" name="@{testincludes}" 
todir="${build.test.results.dir}"/>
+                        <customize/>
+                    </customizePrototype>
+                </j2seproject3:junit-prototype>
+            </sequential>
+        </macrodef>
+    </target>
+    <target 
depends="-init-test-properties,-init-macrodef-junit-prototype-with-module,-init-macrodef-junit-prototype-without-module"
 if="${nb.junit.batch}" name="-init-macrodef-junit-batch" 
unless="${nb.junit.single}">
+        <macrodef name="junit" uri="http://www.netbeans.org/ns/j2se-project/3";>
+            <attribute default="${includes}" name="includes"/>
+            <attribute default="${excludes}" name="excludes"/>
+            <attribute default="**" name="testincludes"/>
+            <attribute default="" name="testmethods"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <j2seproject3:junit-prototype>
+                    <customizePrototype>
+                        <batchtest todir="${build.test.results.dir}">
+                            <fileset dir="${test.webapp.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.console.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.earth-obs.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.geotiff.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.netcdf.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.shapefile.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.xmlstore.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.storage.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.feature.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.referencing.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.ref-by-id.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.metadata.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.utility.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${test.fra-profile.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
+                                <filename name="@{testincludes}"/>
+                            </fileset>
+                            <fileset dir="${build.test.classes.dir}" 
excludes="@{excludes},${excludes},${test.binaryexcludes}" 
includes="${test.binaryincludes}">
+                                <filename name="${test.binarytestincludes}"/>
+                            </fileset>
+                        </batchtest>
+                        <customize/>
+                    </customizePrototype>
+                </j2seproject3:junit-prototype>
+            </sequential>
+        </macrodef>
+    </target>
     <target depends="-init-macrodef-junit-init,-init-macrodef-junit-single, 
-init-macrodef-junit-batch" if="${junit.available}" 
name="-init-macrodef-junit"/>
     <target if="${testng.available}" name="-init-macrodef-testng">
         <macrodef name="testng" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
@@ -582,12 +765,16 @@ is divided into following sections:
                     </fileset>
                 </union>
                 <taskdef classname="org.testng.TestNGAntTask" 
classpath="${run.test.classpath}" name="testng"/>
-                <testng classfilesetref="test.set" 
failureProperty="tests.failed" listeners="org.testng.reporters.VerboseReporter" 
methods="${testng.methods.arg}" mode="${testng.mode}" 
outputdir="${build.test.results.dir}" suitename="Apache_SIS_for_JDK9" 
testname="TestNG tests" workingDir="${work.dir}">
+                <testng classfilesetref="test.set" 
failureProperty="tests.failed" jvm="${platform.java}" 
listeners="org.testng.reporters.VerboseReporter" 
methods="${testng.methods.arg}" mode="${testng.mode}" 
outputdir="${build.test.results.dir}" suitename="Apache_SIS_for_JDK9" 
testname="TestNG tests" workingDir="${work.dir}">
                     <xmlfileset dir="${build.test.classes.dir}" 
includes="@{testincludes}"/>
                     <propertyset>
                         <propertyref prefix="test-sys-prop."/>
                         <mapper from="test-sys-prop.*" to="*" type="glob"/>
                     </propertyset>
+                    <classpath>
+                        <path path="${run.test.classpath}"/>
+                    </classpath>
+                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                     <customize/>
                 </testng>
             </sequential>
@@ -642,10 +829,6 @@ is divided into following sections:
             <sequential>
                 <j2seproject3:test-impl excludes="@{excludes}" 
includes="@{includes}" testincludes="@{testincludes}" 
testmethods="@{testmethods}">
                     <customize>
-                        <classpath>
-                            <path path="${run.test.classpath}"/>
-                        </classpath>
-                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                         <jvmarg line="${run.jvmargs}"/>
                         <jvmarg line="${run.jvmargs.ide}"/>
                     </customize>
@@ -653,113 +836,20 @@ is divided into following sections:
             </sequential>
         </macrodef>
     </target>
-    <target if="${junit.available}" name="-init-macrodef-junit-debug" 
unless="${nb.junit.batch}">
-        <macrodef name="junit-debug" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" 
showoutput="true" tempdir="${build.dir}">
-                    <test methods="@{testmethods}" name="@{testincludes}" 
todir="${build.test.results.dir}"/>
-                    <syspropertyset>
-                        <propertyref prefix="test-sys-prop."/>
-                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <formatter type="brief" usefile="false"/>
-                    <formatter type="xml"/>
-                    <jvmarg value="-ea"/>
-                    <jvmarg line="${debug-args-line}"/>
-                    <jvmarg 
value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
-                    <customize/>
-                </junit>
-            </sequential>
-        </macrodef>
-    </target>
-    <target depends="-init-test-properties" if="${nb.junit.batch}" 
name="-init-macrodef-junit-debug-batch">
-        <macrodef name="junit-debug" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
-            <attribute default="${includes}" name="includes"/>
-            <attribute default="${excludes}" name="excludes"/>
-            <attribute default="**" name="testincludes"/>
-            <attribute default="" name="testmethods"/>
-            <element name="customize" optional="true"/>
-            <sequential>
-                <property name="junit.forkmode" value="perTest"/>
-                <junit dir="${work.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" forkmode="${junit.forkmode}" 
showoutput="true" tempdir="${build.dir}">
-                    <batchtest todir="${build.test.results.dir}">
-                        <fileset dir="${test.webapp.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.console.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.earth-obs.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.geotiff.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.netcdf.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.shapefile.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.xmlstore.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.storage.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.feature.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.referencing.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.ref-by-id.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.metadata.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.utility.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${test.fra-profile.dir}" 
excludes="@{excludes},${excludes}" includes="@{includes}">
-                            <filename name="@{testincludes}"/>
-                        </fileset>
-                        <fileset dir="${build.test.classes.dir}" 
excludes="@{excludes},${excludes},${test.binaryexcludes}" 
includes="${test.binaryincludes}">
-                            <filename name="${test.binarytestincludes}"/>
-                        </fileset>
-                    </batchtest>
-                    <syspropertyset>
-                        <propertyref prefix="test-sys-prop."/>
-                        <mapper from="test-sys-prop.*" to="*" type="glob"/>
-                    </syspropertyset>
-                    <formatter type="brief" usefile="false"/>
-                    <formatter type="xml"/>
-                    <jvmarg value="-ea"/>
-                    <jvmarg line="${debug-args-line}"/>
-                    <jvmarg 
value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
-                    <customize/>
-                </junit>
-            </sequential>
-        </macrodef>
-    </target>
-    <target 
depends="-init-macrodef-junit-debug,-init-macrodef-junit-debug-batch" 
if="${junit.available}" name="-init-macrodef-junit-debug-impl">
+    <target depends="-init-macrodef-junit" if="${junit.available}" 
name="-init-macrodef-junit-debug-impl">
         <macrodef name="test-debug-impl" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
             <attribute default="${includes}" name="includes"/>
             <attribute default="${excludes}" name="excludes"/>
             <attribute default="**" name="testincludes"/>
             <attribute default="" name="testmethods"/>
-            <element implicit="true" name="customize" optional="true"/>
+            <element name="customizeDebuggee" optional="true"/>
             <sequential>
-                <j2seproject3:junit-debug excludes="@{excludes}" 
includes="@{includes}" testincludes="@{testincludes}" 
testmethods="@{testmethods}">
-                    <customize/>
-                </j2seproject3:junit-debug>
+                <j2seproject3:junit excludes="@{excludes}" 
includes="@{includes}" testincludes="@{testincludes}" 
testmethods="@{testmethods}">
+                    <customize>
+                        <jvmarg 
value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/>
+                        <customizeDebuggee/>
+                    </customize>
+                </j2seproject3:junit>
             </sequential>
         </macrodef>
     </target>
@@ -778,14 +868,14 @@ is divided into following sections:
                 <delete dir="${build.test.results.dir}" quiet="true"/>
                 <mkdir dir="${build.test.results.dir}"/>
                 <j2seproject3:debug classname="org.testng.TestNG" 
classpath="${debug.test.classpath}">
-                    <customize>
+                    <customizeDebuggee>
                         <customize2/>
                         <jvmarg value="-ea"/>
                         <arg line="${testng.debug.mode}"/>
                         <arg line="-d ${build.test.results.dir}"/>
                         <arg line="-listener 
org.testng.reporters.VerboseReporter"/>
                         <arg line="${testng.cmd.args}"/>
-                    </customize>
+                    </customizeDebuggee>
                 </j2seproject3:debug>
             </sequential>
         </macrodef>
@@ -812,14 +902,10 @@ is divided into following sections:
             <attribute default="" name="testMethod"/>
             <sequential>
                 <j2seproject3:test-debug-impl excludes="@{excludes}" 
includes="@{includes}" testincludes="@{testincludes}" 
testmethods="@{testmethods}">
-                    <customize>
-                        <classpath>
-                            <path path="${run.test.classpath}"/>
-                        </classpath>
-                        <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
+                    <customizeDebuggee>
                         <jvmarg line="${run.jvmargs}"/>
                         <jvmarg line="${run.jvmargs.ide}"/>
-                    </customize>
+                    </customizeDebuggee>
                 </j2seproject3:test-debug-impl>
             </sequential>
         </macrodef>
@@ -899,13 +985,20 @@ is divided into following sections:
     <target depends="-init-debug-args" name="-init-macrodef-nbjpda">
         <macrodef name="nbjpdastart" 
uri="http://www.netbeans.org/ns/j2se-project/1";>
             <attribute default="${main.class}" name="name"/>
+            <attribute default="${debug.modulepath}" name="modulepath"/>
             <attribute default="${debug.classpath}" name="classpath"/>
             <attribute default="" name="stopclassname"/>
             <sequential>
                 <nbjpdastart addressproperty="jpda.address" name="@{name}" 
stopclassname="@{stopclassname}" transport="${debug-transport}">
+                    <modulepath>
+                        <path path="@{modulepath}"/>
+                    </modulepath>
                     <classpath>
                         <path path="@{classpath}"/>
                     </classpath>
+                    <bootclasspath>
+                        <path path="${platform.bootcp}"/>
+                    </bootclasspath>
                 </nbjpdastart>
             </sequential>
         </macrodef>
@@ -921,18 +1014,6 @@ is divided into following sections:
         </macrodef>
     </target>
     <target name="-init-debug-args">
-        <property name="version-output" value="java version 
&quot;${ant.java.version}"/>
-        <condition property="have-jdk-older-than-1.4">
-            <or>
-                <contains string="${version-output}" substring="java version 
&quot;1.0"/>
-                <contains string="${version-output}" substring="java version 
&quot;1.1"/>
-                <contains string="${version-output}" substring="java version 
&quot;1.2"/>
-                <contains string="${version-output}" substring="java version 
&quot;1.3"/>
-            </or>
-        </condition>
-        <condition else="-Xdebug" property="debug-args-line" value="-Xdebug 
-Xnoagent -Djava.compiler=none">
-            <istrue value="${have-jdk-older-than-1.4}"/>
-        </condition>
         <condition else="dt_socket" property="debug-transport-by-os" 
value="dt_shmem">
             <os family="windows"/>
         </condition>
@@ -942,21 +1023,79 @@ is divided into following sections:
     </target>
     <target depends="-init-debug-args" name="-init-macrodef-debug">
         <macrodef name="debug" uri="http://www.netbeans.org/ns/j2se-project/3";>
+            <attribute default="${module.name}" name="modulename"/>
             <attribute default="${main.class}" name="classname"/>
+            <attribute default="${debug.modulepath}" name="modulepath"/>
             <attribute default="${debug.classpath}" name="classpath"/>
+            <element name="customizeDebuggee" optional="true"/>
+            <sequential>
+                <j2seproject1:java classname="@{classname}" 
classpath="@{classpath}" modulename="@{modulename}" modulepath="@{modulepath}">
+                    <customize>
+                        <jvmarg 
value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/>
+                        <customizeDebuggee/>
+                    </customize>
+                </j2seproject1:java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-source-module-properties" 
if="named.module.internal" name="-init-macrodef-java-with-module">
+        <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1";>
+            <attribute default="${module.name}" name="modulename"/>
+            <attribute default="${main.class}" name="classname"/>
+            <attribute default="${run.modulepath}" name="modulepath"/>
+            <attribute default="${run.upgrademodulepath}" 
name="upgrademodulepath"/>
+            <attribute default="${run.classpath}" name="classpath"/>
+            <attribute default="jvm" name="jvm"/>
             <element name="customize" optional="true"/>
             <sequential>
-                <java classname="@{classname}" dir="${work.dir}" 
failonerror="${java.failonerror}" fork="true">
-                    <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
-                    <jvmarg line="${debug-args-line}"/>
-                    <jvmarg 
value="-Xrunjdwp:transport=${debug-transport},address=${jpda.address}"/>
+                <java classname="@{classname}" dir="${work.dir}" 
failonerror="${java.failonerror}" fork="true" jvm="${platform.java}" 
module="@{modulename}">
+                    <classpath>
+                        <path path="@{classpath}"/>
+                    </classpath>
+                    <modulepath>
+                        <pathelement path="@{modulepath}"/>
+                        <pathelement location="${module.build.classes.dir}"/>
+                    </modulepath>
+                    <upgrademodulepath>
+                        <path path="@{upgrademodulepath}"/>
+                    </upgrademodulepath>
                     <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
                     <redirector errorencoding="${runtime.encoding}" 
inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
                     <jvmarg line="${run.jvmargs}"/>
                     <jvmarg line="${run.jvmargs.ide}"/>
+                    <syspropertyset>
+                        <propertyref prefix="run-sys-prop."/>
+                        <mapper from="run-sys-prop.*" to="*" type="glob"/>
+                    </syspropertyset>
+                    <customize/>
+                </java>
+            </sequential>
+        </macrodef>
+    </target>
+    <target depends="-init-source-module-properties" 
if="unnamed.module.internal" name="-init-macrodef-java-with-unnamed-module">
+        <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1";>
+            <attribute default="" name="modulename"/>
+            <attribute default="${main.class}" name="classname"/>
+            <attribute default="${run.modulepath}" name="modulepath"/>
+            <attribute default="${run.upgrademodulepath}" 
name="upgrademodulepath"/>
+            <attribute default="${run.classpath}" name="classpath"/>
+            <attribute default="jvm" name="jvm"/>
+            <element name="customize" optional="true"/>
+            <sequential>
+                <java classname="@{classname}" dir="${work.dir}" 
failonerror="${java.failonerror}" fork="true" jvm="${platform.java}">
                     <classpath>
                         <path path="@{classpath}"/>
                     </classpath>
+                    <modulepath>
+                        <path path="@{modulepath}"/>
+                    </modulepath>
+                    <upgrademodulepath>
+                        <path path="@{upgrademodulepath}"/>
+                    </upgrademodulepath>
+                    <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
+                    <redirector errorencoding="${runtime.encoding}" 
inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
+                    <jvmarg line="${run.jvmargs}"/>
+                    <jvmarg line="${run.jvmargs.ide}"/>
                     <syspropertyset>
                         <propertyref prefix="run-sys-prop."/>
                         <mapper from="run-sys-prop.*" to="*" type="glob"/>
@@ -966,14 +1105,16 @@ is divided into following sections:
             </sequential>
         </macrodef>
     </target>
-    <target name="-init-macrodef-java">
+    <target depends="-init-source-module-properties" 
name="-init-macrodef-java-without-module" unless="modules.supported.internal">
         <macrodef name="java" uri="http://www.netbeans.org/ns/j2se-project/1";>
+            <attribute default="" name="modulename"/>
             <attribute default="${main.class}" name="classname"/>
+            <attribute default="" name="modulepath"/>
             <attribute default="${run.classpath}" name="classpath"/>
             <attribute default="jvm" name="jvm"/>
             <element name="customize" optional="true"/>
             <sequential>
-                <java classname="@{classname}" dir="${work.dir}" 
failonerror="${java.failonerror}" fork="true">
+                <java classname="@{classname}" dir="${work.dir}" 
failonerror="${java.failonerror}" fork="true" jvm="${platform.java}">
                     <jvmarg line="${endorsed.classpath.cmd.line.arg}"/>
                     <jvmarg value="-Dfile.encoding=${runtime.encoding}"/>
                     <redirector errorencoding="${runtime.encoding}" 
inputencoding="${runtime.encoding}" outputencoding="${runtime.encoding}"/>
@@ -991,6 +1132,7 @@ is divided into following sections:
             </sequential>
         </macrodef>
     </target>
+    <target depends="-init-macrodef-java-with-module, 
-init-macrodef-java-with-unnamed-module, -init-macrodef-java-without-module" 
name="-init-macrodef-java"/>
     <target name="-init-macrodef-copylibs">
         <macrodef name="copylibs" 
uri="http://www.netbeans.org/ns/j2se-project/3";>
             <attribute default="${manifest.file}" name="manifest"/>
@@ -1088,7 +1230,9 @@ is divided into following sections:
         <available file="${build.classes.dir}/.netbeans_automatic_build" 
property="netbeans.automatic.build"/>
     </target>
     <target depends="init" if="netbeans.automatic.build" 
name="-clean-after-automatic-build">
-        <antcall target="clean"/>
+        <antcall target="clean">
+            <param name="no.dependencies" value="true"/>
+        </antcall>
     </target>
     <target depends="init,deps-jar" name="-pre-pre-compile">
         <mkdir dir="${build.classes.dir}"/>
@@ -1143,7 +1287,7 @@ is divided into following sections:
     <target depends="init,deps-jar,-pre-pre-compile" name="-do-compile-single">
         <fail unless="javac.includes">Must select some files in the IDE or set 
javac.includes</fail>
         <j2seproject3:force-recompile/>
-        <j2seproject3:javac excludes="" 
gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}" 
sourcepath="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.earth-obs.dir}:${src.geotiff.dir}:${src.netcdf.dir}:${src.shapefile.dir}:${src.xmlstore.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.ref-by-id.dir}:${src.metadata.dir}:${src.utility.dir}:${src.fra-profile.dir}"/>
+        <j2seproject3:javac excludes="" 
gensrcdir="${build.generated.sources.dir}" includes="${javac.includes}, 
module-info.java" 
sourcepath="${src.local-src.dir}:${src.webapp.dir}:${src.console.dir}:${src.earth-obs.dir}:${src.geotiff.dir}:${src.netcdf.dir}:${src.shapefile.dir}:${src.xmlstore.dir}:${src.storage.dir}:${src.feature.dir}:${src.referencing.dir}:${src.ref-by-id.dir}:${src.metadata.dir}:${src.utility.dir}:${src.fra-profile.dir}"/>
     </target>
     <target name="-post-compile-single">
         <!-- Empty placeholder for easier customization. -->
@@ -1163,6 +1307,20 @@ is divided into following sections:
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
     </target>
+    <target depends="init,compile" name="-check-module-main-class">
+        <condition property="do.module.main.class">
+            <and>
+                <isset property="main.class.available"/>
+                <available file="${build.classes.dir}/module-info.class"/>
+                <isset property="libs.CopyLibs.classpath"/>
+                <available 
classname="org.netbeans.modules.java.j2seproject.moduletask.ModuleMainClass" 
classpath="${libs.CopyLibs.classpath}"/>
+            </and>
+        </condition>
+    </target>
+    <target depends="-check-module-main-class" if="do.module.main.class" 
name="-set-module-main-class">
+        <taskdef 
classname="org.netbeans.modules.java.j2seproject.moduletask.ModuleMainClass" 
classpath="${libs.CopyLibs.classpath}" name="modulemainclass"/>
+        <modulemainclass failonerror="false" mainclass="${main.class}" 
moduleinfo="${build.classes.dir}/module-info.class"/>
+    </target>
     <target depends="init" if="do.archive" name="-do-jar-create-manifest" 
unless="manifest.available">
         <tempfile deleteonexit="true" destdir="${build.dir}" 
property="tmp.manifest.file"/>
         <touch file="${tmp.manifest.file}" verbose="false"/>
@@ -1193,17 +1351,43 @@ is divided into following sections:
         <j2seproject3:copylibs manifest="${tmp.manifest.file}"/>
         <echo level="info">To run this application from the command line 
without Ant, try:</echo>
         <property location="${dist.jar}" name="dist.jar.resolved"/>
-        <echo level="info">java -jar "${dist.jar.resolved}"</echo>
+        <echo level="info">${platform.java} -jar "${dist.jar.resolved}"</echo>
     </target>
     <target 
depends="init,compile,-pre-pre-jar,-pre-jar,-do-jar-create-manifest,-do-jar-copy-manifest,-do-jar-set-mainclass,-do-jar-set-profile,-do-jar-set-splashscreen"
 if="do.archive" name="-do-jar-jar" unless="do.mkdist">
         <j2seproject1:jar manifest="${tmp.manifest.file}"/>
         <property location="${build.classes.dir}" 
name="build.classes.dir.resolved"/>
         <property location="${dist.jar}" name="dist.jar.resolved"/>
+        <condition else="${dist.jar.resolved}" 
property="jar.usage.message.class.path.replacement" value="">
+            <isset property="named.module.internal"/>
+        </condition>
         <pathconvert property="run.classpath.with.dist.jar">
             <path path="${run.classpath}"/>
+            <map from="${build.classes.dir.resolved}" 
to="${jar.usage.message.class.path.replacement}"/>
+        </pathconvert>
+        <pathconvert property="run.modulepath.with.dist.jar">
+            <path location="${dist.jar.resolved}"/>
+            <path path="${run.modulepath}"/>
             <map from="${build.classes.dir.resolved}" 
to="${dist.jar.resolved}"/>
         </pathconvert>
-        <condition else="" property="jar.usage.message" value="To run this 
application from the command line without Ant, 
try:${line.separator}${platform.java} -cp ${run.classpath.with.dist.jar} 
${main.class}">
+        <condition else="${run.modulepath}" 
property="jar.usage.message.run.modulepath.with.dist.jar" 
value="${run.modulepath.with.dist.jar}">
+            <isset property="named.module.internal"/>
+        </condition>
+        <condition else="" property="jar.usage.message.module.path" value=" -p 
${jar.usage.message.run.modulepath.with.dist.jar}">
+            <and>
+                <isset property="modules.supported.internal"/>
+                <length length="0" 
string="${jar.usage.message.run.modulepath.with.dist.jar}" when="greater"/>
+            </and>
+        </condition>
+        <condition else="" property="jar.usage.message.class.path" value=" -cp 
${run.classpath.with.dist.jar}">
+            <length length="0" string="${run.classpath.with.dist.jar}" 
when="greater"/>
+        </condition>
+        <condition else="/${main.class}" 
property="jar.usage.message.main.class.class.selector" value="">
+            <isset property="do.module.main.class"/>
+        </condition>
+        <condition else=" ${main.class}" 
property="jar.usage.message.main.class" value=" -m 
${module.name}${jar.usage.message.main.class.class.selector}">
+            <isset property="named.module.internal"/>
+        </condition>
+        <condition else="" property="jar.usage.message" value="To run this 
application from the command line without Ant, 
try:${line.separator}${platform.java}${jar.usage.message.module.path}${jar.usage.message.class.path}${jar.usage.message.main.class}">
             <isset property="main.class.available"/>
         </condition>
         <condition else="debug" property="jar.usage.level" value="info">
@@ -1222,7 +1406,7 @@ is divided into following sections:
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
     </target>
-    <target 
depends="init,compile,-pre-jar,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar"
 name="-do-jar"/>
+    <target 
depends="init,compile,-pre-jar,-set-module-main-class,-do-jar-without-libraries,-do-jar-with-libraries,-post-jar"
 name="-do-jar"/>
     <target depends="init,compile,-pre-jar,-do-jar,-post-jar" 
description="Build JAR." name="jar"/>
     <!--
                 =================
@@ -1260,9 +1444,9 @@ is divided into following sections:
     </target>
     <target depends="init,compile" name="-debug-start-debuggee">
         <j2seproject3:debug>
-            <customize>
+            <customizeDebuggee>
                 <arg line="${application.args}"/>
-            </customize>
+            </customizeDebuggee>
         </j2seproject3:debug>
     </target>
     <target depends="init,compile,-debug-start-debugger,-debug-start-debuggee" 
description="Debug project in IDE." if="netbeans.home" name="debug"/>
@@ -1328,28 +1512,24 @@ is divided into following sections:
             </customize>
         </profile>
     </target>
-    <target depends="profile-init,compile-test-single" 
if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
+    <target depends="-init-macrodef-junit,profile-init,compile-test-single" 
if="profiler.info.jvmargs.agent" name="-profile-test-single-pre72">
         <fail unless="netbeans.home">This target only works when run from 
inside the NetBeans IDE.</fail>
         <nbprofiledirect>
             <classpath>
                 <path path="${run.test.classpath}"/>
             </classpath>
         </nbprofiledirect>
-        <junit dir="${profiler.info.dir}" errorproperty="tests.failed" 
failureproperty="tests.failed" fork="true" jvm="${profiler.info.jvm}" 
showoutput="true">
-            <env key="${profiler.info.pathvar}" 
path="${profiler.info.agentpath}:${profiler.current.path}"/>
-            <jvmarg value="${profiler.info.jvmargs.agent}"/>
-            <jvmarg line="${profiler.info.jvmargs}"/>
-            <test name="${profile.class}"/>
-            <classpath>
-                <path path="${run.test.classpath}"/>
-            </classpath>
-            <syspropertyset>
-                <propertyref prefix="test-sys-prop."/>
-                <mapper from="test-sys-prop.*" to="*" type="glob"/>
-            </syspropertyset>
-            <formatter type="brief" usefile="false"/>
-            <formatter type="xml"/>
-        </junit>
+        <j2seproject3:junit excludes="${excludes}" includes="${includes}" 
testincludes="${profile.class}" testmethods="">
+            <customize>
+                <jvmarg 
value="-agentlib:jdwp=transport=${debug-transport},address=${jpda.address}"/>
+                <env key="${profiler.info.pathvar}" 
path="${profiler.info.agentpath}:${profiler.current.path}"/>
+                <jvmarg value="${profiler.info.jvmargs.agent}"/>
+                <jvmarg line="${profiler.info.jvmargs}"/>
+                <classpath>
+                    <path path="${run.test.classpath}"/>
+                </classpath>
+            </customize>
+        </j2seproject3:junit>
     </target>
     <!--
                 end of pre NB72 profiling section
@@ -1402,10 +1582,13 @@ is divided into following sections:
                 </not>
             </and>
         </condition>
+        <exec executable="${platform.java}" failonerror="false" 
outputproperty="platform.version.output">
+            <arg value="-version"/>
+        </exec>
         <condition else="" property="bug5101868workaround" value="*.java">
-            <matches pattern="1\.[56](\..*)?" string="${java.version}"/>
+            <matches multiline="true" pattern="1\.[56](\..*)?" 
string="${platform.version.output}"/>
         </condition>
-        <javadoc additionalparam="-J-Dfile.encoding=${file.encoding} 
${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" 
destdir="${dist.javadoc.dir}" docencoding="UTF-8" 
encoding="${javadoc.encoding.used}" failonerror="true" 
noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" 
notree="${javadoc.notree}" private="${javadoc.private}" 
source="${javac.source}" splitindex="${javadoc.splitindex}" 
use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" 
windowtitle="${javadoc.windowtitle}">
+        <javadoc additionalparam="-J-Dfile.encoding=${file.encoding} 
${javadoc.additionalparam}" author="${javadoc.author}" charset="UTF-8" 
destdir="${dist.javadoc.dir}" docencoding="UTF-8" 
encoding="${javadoc.encoding.used}" executable="${platform.javadoc}" 
failonerror="true" noindex="${javadoc.noindex}" nonavbar="${javadoc.nonavbar}" 
notree="${javadoc.notree}" private="${javadoc.private}" 
source="${javac.source}" splitindex="${javadoc.splitindex}" 
use="${javadoc.use}" useexternalfile="true" version="${javadoc.version}" 
windowtitle="${javadoc.windowtitle}">
             <classpath>
                 <path path="${javac.classpath}"/>
             </classpath>
@@ -1527,11 +1710,56 @@ is divided into following sections:
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
     </target>
+    <target depends="-init-source-module-properties" 
if="named.module.internal" 
name="-init-test-javac-module-properties-with-module">
+        <j2seproject3:modulename property="test.module.name" 
sourcepath="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}"/>
+        <condition else="-Xmodule:${module.name} --add-reads 
${module.name}=ALL-UNNAMED" property="javac.test.compilerargs" 
value="--add-reads ${test.module.name}=ALL-UNNAMED">
+            <and>
+                <isset property="test.module.name"/>
+                <length length="0" string="${test.module.name}" 
when="greater"/>
+            </and>
+        </condition>
+    </target>
+    <target depends="-init-source-module-properties" 
if="named.module.internal" name="-init-test-run-module-properties">
+        <condition else="${module.name}" 
property="run.test.addexport.source.module.internal" 
value="${test.module.name}">
+            <and>
+                <isset property="test.module.name"/>
+                <length length="0" string="${test.module.name}" 
when="greater"/>
+            </and>
+        </condition>
+        <fileset dir="${build.test.classes.dir}" 
id="run.test.packages.internal" includes="**/*.class"/>
+        <property location="${build.test.classes.dir}" 
name="build.test.classes.dir.abs.internal"/>
+        <pathconvert pathsep=" " property="run.test.addexports.internal" 
refid="run.test.packages.internal">
+            <chainedmapper>
+                <regexpmapper from="^(.*)\Q${file.separator}\E.*\.class$$" 
to="\1"/>
+                <filtermapper>
+                    <uniqfilter/>
+                    <replacestring 
from="${build.test.classes.dir.abs.internal}" to=""/>
+                </filtermapper>
+                <cutdirsmapper dirs="1"/>
+                <packagemapper from="*" to="--add-exports 
${run.test.addexport.source.module.internal}/*=ALL-UNNAMED"/>
+            </chainedmapper>
+        </pathconvert>
+        <condition else="--patch-module 
${module.name}=${build.test.classes.dir} --add-modules ${module.name} 
--add-reads ${module.name}=ALL-UNNAMED ${run.test.addexports.internal}" 
property="run.test.jvmargs" value="--add-modules ${test.module.name} 
--add-reads ${test.module.name}=ALL-UNNAMED ${run.test.addexports.internal}">
+            <and>
+                <isset property="test.module.name"/>
+                <length length="0" string="${test.module.name}" 
when="greater"/>
+            </and>
+        </condition>
+    </target>
+    <target depends="-init-source-module-properties" 
name="-init-test-module-properties-without-module" 
unless="named.module.internal">
+        <property name="javac.test.compilerargs" value=""/>
+        <property name="run.test.jvmargs" value=""/>
+    </target>
+    <target 
depends="-init-test-javac-module-properties-with-module,-init-test-module-properties-without-module"
 name="-init-test-module-properties"/>
     <target if="do.depend.true" name="-compile-test-depend">
         <j2seproject3:depend classpath="${javac.test.classpath}" 
destdir="${build.test.classes.dir}" 
srcdir="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}"/>
     </target>
-    <target 
depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend"
 if="have.tests" name="-do-compile-test">
-        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" 
classpath="${javac.test.classpath}" debug="true" 
destdir="${build.test.classes.dir}" processorpath="${javac.test.processorpath}" 
srcdir="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}"/>
+    <target 
depends="init,deps-jar,compile,-init-test-module-properties,-pre-pre-compile-test,-pre-compile-test,-compile-test-depend"
 if="have.tests" name="-do-compile-test">
+        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" 
classpath="${javac.test.classpath}" debug="true" 
destdir="${build.test.classes.dir}" modulepath="${javac.test.modulepath}" 
processorpath="${javac.test.processorpath}" 
srcdir="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}">
+            <customize>
+                <compilerarg line="${javac.test.compilerargs}"/>
+            </customize>
+        </j2seproject3:javac>
         <copy todir="${build.test.classes.dir}">
             <fileset dir="${test.webapp.dir}" 
excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.console.dir}" 
excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
@@ -1558,10 +1786,14 @@ is divided into following sections:
         <!-- Empty placeholder for easier customization. -->
         <!-- You can override this target in the ../build.xml file. -->
     </target>
-    <target 
depends="init,deps-jar,compile,-pre-pre-compile-test,-pre-compile-test-single" 
if="have.tests" name="-do-compile-test-single">
+    <target 
depends="init,deps-jar,compile,-init-test-module-properties,-pre-pre-compile-test,-pre-compile-test-single"
 if="have.tests" name="-do-compile-test-single">
         <fail unless="javac.includes">Must select some files in the IDE or set 
javac.includes</fail>
         <j2seproject3:force-recompile destdir="${build.test.classes.dir}"/>
-        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" 
classpath="${javac.test.classpath}" debug="true" 
destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}" 
processorpath="${javac.test.processorpath}" 
sourcepath="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}"
 
srcdir="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}"/>
+        <j2seproject3:javac apgeneratedsrcdir="${build.test.classes.dir}" 
classpath="${javac.test.classpath}" debug="true" 
destdir="${build.test.classes.dir}" excludes="" includes="${javac.includes}, 
module-info.java" modulepath="${javac.test.modulepath}" 
processorpath="${javac.test.processorpath}" 
sourcepath="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}"
 
srcdir="${test.webapp.dir}:${test.console.dir}:${test.earth-obs.dir}:${test.geotiff.dir}:${test.netcdf.dir}:${test.shapefile.dir}:${test.xmlstore.dir}:${test.storage.dir}:${test.feature.dir}:${test.referencing.dir}:${test.ref-by-id.dir}:${test.metadata.dir}:${test.utility.dir}:${test.fra-profile.dir}">
+            <customize>
+                <compilerarg line="${javac.test.compilerargs}"/>
+            </customize>
+        </j2seproject3:javac>
         <copy todir="${build.test.classes.dir}">
             <fileset dir="${test.webapp.dir}" 
excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
             <fileset dir="${test.console.dir}" 
excludes="${build.classes.excludes},${excludes}" includes="${includes}"/>
@@ -1592,7 +1824,7 @@ is divided into following sections:
     <target depends="init" if="have.tests" name="-pre-test-run">
         <mkdir dir="${build.test.results.dir}"/>
     </target>
-    <target depends="init,compile-test,-pre-test-run" if="have.tests" 
name="-do-test-run">
+    <target 
depends="init,compile-test,-init-test-run-module-properties,-pre-test-run" 
if="have.tests" name="-do-test-run">
         <j2seproject3:test includes="${includes}" 
testincludes="**/*Test.java"/>
     </target>
     <target depends="init,compile-test,-pre-test-run,-do-test-run" 
if="have.tests" name="-post-test-run">
@@ -1604,14 +1836,14 @@ is divided into following sections:
     <target depends="init" if="have.tests" name="-pre-test-run-single">
         <mkdir dir="${build.test.results.dir}"/>
     </target>
-    <target depends="init,compile-test-single,-pre-test-run-single" 
if="have.tests" name="-do-test-run-single">
+    <target 
depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single"
 if="have.tests" name="-do-test-run-single">
         <fail unless="test.includes">Must select some files in the IDE or set 
test.includes</fail>
         <j2seproject3:test excludes="" includes="${test.includes}" 
testincludes="${test.includes}"/>
     </target>
     <target 
depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single" 
if="have.tests" name="-post-test-run-single">
         <fail if="tests.failed" unless="ignore.failing.tests">Some tests 
failed; see details above.</fail>
     </target>
-    <target 
depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single,-post-test-run-single"
 description="Run single unit test." name="test-single"/>
+    <target 
depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single,-do-test-run-single,-post-test-run-single"
 description="Run single unit test." name="test-single"/>
     <target depends="init,compile-test-single,-pre-test-run-single" 
if="have.tests" name="-do-test-run-single-method">
         <fail unless="test.class">Must select some files in the IDE or set 
test.class</fail>
         <fail unless="test.method">Must select some method in the IDE or set 
test.method</fail>
@@ -1620,7 +1852,7 @@ is divided into following sections:
     <target 
depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method"
 if="have.tests" name="-post-test-run-single-method">
         <fail if="tests.failed" unless="ignore.failing.tests">Some tests 
failed; see details above.</fail>
     </target>
-    <target 
depends="init,compile-test-single,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method"
 description="Run single unit test." name="test-single-method"/>
+    <target 
depends="init,compile-test-single,-init-test-run-module-properties,-pre-test-run-single,-do-test-run-single-method,-post-test-run-single-method"
 description="Run single unit test." name="test-single-method"/>
     <!--
                 =======================
                 TEST DEBUGGING SECTION
@@ -1638,8 +1870,8 @@ is divided into following sections:
     <target depends="init,compile-test" if="netbeans.home+have.tests" 
name="-debug-start-debugger-test">
         <j2seproject1:nbjpdastart classpath="${debug.test.classpath}" 
name="${test.class}"/>
     </target>
-    <target 
depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test"
 name="debug-test"/>
-    <target 
depends="init,compile-test-single,-debug-start-debugger-test,-debug-start-debuggee-test-method"
 name="debug-test-method"/>
+    <target 
depends="init,compile-test-single,-init-test-run-module-properties,-debug-start-debugger-test,-debug-start-debuggee-test"
 name="debug-test"/>
+    <target 
depends="init,compile-test-single,-init-test-run-module-properties,-debug-start-debugger-test,-debug-start-debuggee-test-method"
 name="debug-test-method"/>
     <target depends="init,-pre-debug-fix,compile-test-single" 
if="netbeans.home" name="-do-debug-fix-test">
         <j2seproject1:nbjpdareload dir="${build.test.classes.dir}"/>
     </target>
@@ -1665,9 +1897,9 @@ is divided into following sections:
     <target depends="init,compile-single" if="netbeans.home" 
name="-debug-start-debuggee-applet">
         <fail unless="applet.url">Must select one file in the IDE or set 
applet.url</fail>
         <j2seproject3:debug classname="sun.applet.AppletViewer">
-            <customize>
+            <customizeDebuggee>
                 <arg value="${applet.url}"/>
-            </customize>
+            </customizeDebuggee>
         </j2seproject3:debug>
     </target>
     <target 
depends="init,compile-single,-debug-start-debugger,-debug-start-debuggee-applet"
 if="netbeans.home" name="debug-applet"/>

Modified: sis/branches/JDK9/ide-project/NetBeans/nbproject/genfiles.properties
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK9/ide-project/NetBeans/nbproject/genfiles.properties?rev=1789765&r1=1789764&r2=1789765&view=diff
==============================================================================
--- sis/branches/JDK9/ide-project/NetBeans/nbproject/genfiles.properties 
[ISO-8859-1] (original)
+++ sis/branches/JDK9/ide-project/NetBeans/nbproject/genfiles.properties 
[ISO-8859-1] Sat Apr  1 00:15:16 2017
@@ -3,6 +3,6 @@
 build.xml.data.CRC32=58e6b21c
 build.xml.script.CRC32=462eaba0
 build.xml.stylesheet.CRC32=28e38971@1.53.1.46
-nbproject/build-impl.xml.data.CRC32=2b076fc2
-nbproject/build-impl.xml.script.CRC32=254cb1ce
-nbproject/build-impl.xml.stylesheet.CRC32=830a3534@1.80.1.48
+nbproject/build-impl.xml.data.CRC32=71ecf9a8
+nbproject/build-impl.xml.script.CRC32=490cf60b
+nbproject/build-impl.xml.stylesheet.CRC32=02b811c7@1.88.0.48

Modified: sis/branches/JDK9/ide-project/NetBeans/nbproject/project.properties
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK9/ide-project/NetBeans/nbproject/project.properties?rev=1789765&r1=1789764&r2=1789765&view=diff
==============================================================================
--- sis/branches/JDK9/ide-project/NetBeans/nbproject/project.properties 
[ISO-8859-1] (original)
+++ sis/branches/JDK9/ide-project/NetBeans/nbproject/project.properties 
[ISO-8859-1] Sat Apr  1 00:15:16 2017
@@ -136,7 +136,6 @@ javac.test.classpath=\
     ${build.classes.dir}
 javac.test.processorpath=\
     ${javac.test.classpath}
-javac.modulepath=
 javac.test.modulepath=\
     ${javac.modulepath}
 run.classpath=\
@@ -156,6 +155,10 @@ run.test.classpath=\
     
${maven.repository}/org/apache/httpcomponents/httpclient/${httpclient.version}/httpclient-${httpclient.version}.jar:\
     
${maven.repository}/org/slf4j/slf4j-api/${slf4j.version}/slf4j-api-${slf4j.version}.jar:\
     
${maven.repository}/org/slf4j/slf4j-jdk14/${slf4j.version}/slf4j-jdk14-${slf4j.version}.jar
+
+javac.modulepath=
+javac.processormodulepath=\
+    ${javac.modulepath}
 run.modulepath=\
     ${javac.modulepath}
 run.test.modulepath=\

Modified: sis/branches/JDK9/ide-project/NetBeans/nbproject/project.xml
URL: 
http://svn.apache.org/viewvc/sis/branches/JDK9/ide-project/NetBeans/nbproject/project.xml?rev=1789765&r1=1789764&r2=1789765&view=diff
==============================================================================
--- sis/branches/JDK9/ide-project/NetBeans/nbproject/project.xml (original)
+++ sis/branches/JDK9/ide-project/NetBeans/nbproject/project.xml Sat Apr  1 
00:15:16 2017
@@ -22,6 +22,7 @@
     <configuration>
         <data xmlns="http://www.netbeans.org/ns/j2se-project/3";>
             <name>Apache SIS for JDK9</name>
+            <explicit-platform explicit-source-supported="true"/>
             <source-roots>
                 <root id="src.local-src.dir" name="Local sources 
(unversioned)"/>
                 <root id="src.webapp.dir" name="Web application"/>


Reply via email to