Changeset 18858 in josm for trunk/build.xml


Ignore:
Timestamp:
2023-10-09T21:21:06+02:00 (9 months ago)
Author:
taylor.smock
Message:

See #23218: Fix check-plugins (hardcoded excludes for plugins with min Java versions > 8)

Additional changes:

  • Tabs to spaces (SonarLint)
  • check-plugins can now be run on Java 20 (animal_sniffer does not yet support Java 21)
File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/build.xml

    r18819 r18858  
    191191        </jar>
    192192        <!-- Sign jar if all environment variables are set -->
    193         <signjar jar="${dist.jar}" alias="${env.SIGN_ALIAS}" tsaurl="${env.SIGN_TSA}"
     193        <signjar jar="${dist.jar}" alias="${env.SIGN_ALIAS}" tsaurl="${env.SIGN_TSA}"
    194194            keystore="${env.SIGN_KEYSTORE}" storepass="${env.SIGN_STOREPASS}" keypass="${env.SIGN_KEYPASS}" if:set="sign.jar" />
    195195    </target>
     
    448448            <echo message="Running @{testfamily}@{testITsuffix} tests with JUnit"/>
    449449            <jacoco:agent destfile="${test.dir}/jacoco@{testITsuffix}.exec" enabled="@{coverage}" includes="${jacoco.includes}" dumponexit="true"
    450                     inclbootstrapclasses="${jacoco.inclbootstrapclasses}" inclnolocationclasses="${jacoco.inclnolocationclasses}" property="jacocoagent@{testfamily}@{testITsuffix}" if:true="@{coverage}"/>
     450                          inclbootstrapclasses="${jacoco.inclbootstrapclasses}" inclnolocationclasses="${jacoco.inclnolocationclasses}"
     451                          property="jacocoagent@{testfamily}@{testITsuffix}" if:true="@{coverage}"/>
    451452            <junitlauncher printsummary="${junit.printsummary}" failureproperty="test.@{testfamily}@{testITsuffix}.failed">
    452453                <classpath>
     
    457458                <testclasses outputDir="${test.dir}/report">
    458459                    <fileset dir="${test.dir}/build/@{testfamily}" includes="@{includes}" excludes="@{excludes}"/>
    459                         <fork>
    460                             <jvmarg value="${jacocoagent@{testfamily}@{testITsuffix}}" if:set="jacocoagent@{testfamily}@{testITsuffix}" />
    461                             <jvmarg value="-Dfile.encoding=UTF-8"/>
    462                             <jvmarg value="-Djava.locale.providers=SPI,JRE,CLDR" if:set="isJava9" />
    463                             <jvmarg value="-Djava.security.manager=allow" if:set="isJava17" />
    464                             <jvmarg value="-javaagent:${test.dir}/lib/jmockit.jar"/>
    465                             <jvmarg value="-Djunit.jupiter.extensions.autodetection.enabled=true"/>
    466                             <jvmarg value="-Djunit.jupiter.execution.parallel.enabled=true"/>
    467                             <jvmarg value="--add-modules" if:set="isJava9" unless:set="isJava11" />
    468                             <jvmarg value="java.activation,java.se.ee" if:set="isJava9" unless:set="isJava11" />
    469                             <jvmarg value="--add-exports" if:set="isJava9" unless:set="noJavaFX" />
    470                             <jvmarg value="javafx.graphics/com.sun.javafx.application=ALL-UNNAMED" if:set="isJava9" unless:set="noJavaFX" />
    471                             <jvmarg value="--add-exports" if:set="isJava9" unless:set="isJava11" />
    472                             <jvmarg value="jdk.deploy/com.sun.deploy.config=ALL-UNNAMED" if:set="isJava9" unless:set="isJava11" />
    473                             <jvmarg value="--add-opens" if:set="isJava9" />
    474                             <jvmarg value="java.base/java.io=ALL-UNNAMED" if:set="isJava9" />
    475                             <jvmarg value="--add-opens" if:set="isJava9" />
    476                             <jvmarg value="java.base/java.lang=ALL-UNNAMED" if:set="isJava9" />
    477                             <jvmarg value="--add-opens" if:set="isJava9" />
    478                             <jvmarg value="java.base/java.nio=ALL-UNNAMED" if:set="isJava9" />
    479                             <jvmarg value="--add-opens" if:set="isJava9" />
    480                             <jvmarg value="java.base/java.text=ALL-UNNAMED" if:set="isJava9" />
    481                             <jvmarg value="--add-opens" if:set="isJava9" />
    482                             <jvmarg value="java.base/java.util=ALL-UNNAMED" if:set="isJava9" />
    483                             <jvmarg value="--add-opens" if:set="isJava9" />
    484                             <jvmarg value="java.base/jdk.internal.loader=ALL-UNNAMED" if:set="isJava9" />
    485                             <jvmarg value="--add-opens" if:set="isJava9" />
    486                             <jvmarg value="java.desktop/java.awt=ALL-UNNAMED" if:set="isJava9" />
     460                    <fork>
     461                        <jvmarg value="${jacocoagent@{testfamily}@{testITsuffix}}" if:set="jacocoagent@{testfamily}@{testITsuffix}" />
     462                        <jvmarg value="-Dfile.encoding=UTF-8"/>
     463                        <jvmarg value="-Djava.locale.providers=SPI,JRE,CLDR" if:set="isJava9" />
     464                        <jvmarg value="-Djava.security.manager=allow" if:set="isJava17" />
     465                        <jvmarg value="-javaagent:${test.dir}/lib/jmockit.jar"/>
     466                        <jvmarg value="-Djunit.jupiter.extensions.autodetection.enabled=true"/>
     467                        <jvmarg value="-Djunit.jupiter.execution.parallel.enabled=true"/>
     468                        <jvmarg value="--add-modules" if:set="isJava9" unless:set="isJava11" />
     469                        <jvmarg value="java.activation,java.se.ee" if:set="isJava9" unless:set="isJava11" />
     470                        <jvmarg value="--add-exports" if:set="isJava9" unless:set="noJavaFX" />
     471                        <jvmarg value="javafx.graphics/com.sun.javafx.application=ALL-UNNAMED" if:set="isJava9" unless:set="noJavaFX" />
     472                        <jvmarg value="--add-exports" if:set="isJava9" unless:set="isJava11" />
     473                        <jvmarg value="jdk.deploy/com.sun.deploy.config=ALL-UNNAMED" if:set="isJava9" unless:set="isJava11" />
    487474                        <jvmarg value="--add-opens" if:set="isJava9" />
    488                             <jvmarg value="java.prefs/java.util.prefs=ALL-UNNAMED" if:set="isJava9" />
    489                             <sysproperty key="josm.home" value="${test.dir}/config/@{testfamily}-josm.home"/>
    490                             <sysproperty key="josm.test.data" value="${test.dir}/data"/>
    491                             <sysproperty key="java.awt.headless" value="${test.headless}"/>
    492                             <sysproperty key="java.security.manager" value="allow" if:set="isJava17" />
    493                             <sysproperty key="glass.platform" value="Monocle"/>
    494                             <sysproperty key="monocle.platform" value="Headless"/>
    495                             <sysproperty key="prism.order" value="sw"/>
    496                             <sysproperty key="suppressPermanentFailure" value="${suppressPermanentFailure}"/>
    497                             <sysproperty key="junit.jupiter.execution.parallel.enabled" value="${junit.jupiter.execution.parallel.enabled}" if:set="junit.jupiter.execution.parallel.enabled"/>
    498                             <sysproperty key="junit.jupiter.execution.parallel.mode.default" value="${junit.jupiter.execution.parallel.mode.default}" if:set="junit.jupiter.execution.parallel.mode.default"/>
    499                             <sysproperty key="junit.jupiter.execution.parallel.mode.classes.default" value="${junit.jupiter.execution.parallel.mode.classes.default}" if:set="junit.jupiter.execution.parallel.mode.classes.default"/>
    500                         </fork>
     475                        <jvmarg value="java.base/java.io=ALL-UNNAMED" if:set="isJava9" />
     476                        <jvmarg value="--add-opens" if:set="isJava9" />
     477                        <jvmarg value="java.base/java.lang=ALL-UNNAMED" if:set="isJava9" />
     478                        <jvmarg value="--add-opens" if:set="isJava9" />
     479                        <jvmarg value="java.base/java.nio=ALL-UNNAMED" if:set="isJava9" />
     480                        <jvmarg value="--add-opens" if:set="isJava9" />
     481                        <jvmarg value="java.base/java.text=ALL-UNNAMED" if:set="isJava9" />
     482                        <jvmarg value="--add-opens" if:set="isJava9" />
     483                        <jvmarg value="java.base/java.util=ALL-UNNAMED" if:set="isJava9" />
     484                        <jvmarg value="--add-opens" if:set="isJava9" />
     485                        <jvmarg value="java.base/jdk.internal.loader=ALL-UNNAMED" if:set="isJava9" />
     486                        <jvmarg value="--add-opens" if:set="isJava9" />
     487                        <jvmarg value="java.desktop/java.awt=ALL-UNNAMED" if:set="isJava9" />
     488                        <jvmarg value="--add-opens" if:set="isJava9" />
     489                        <jvmarg value="java.prefs/java.util.prefs=ALL-UNNAMED" if:set="isJava9" />
     490                        <sysproperty key="josm.home" value="${test.dir}/config/@{testfamily}-josm.home"/>
     491                        <sysproperty key="josm.test.data" value="${test.dir}/data"/>
     492                        <sysproperty key="java.awt.headless" value="${test.headless}"/>
     493                        <sysproperty key="java.security.manager" value="allow" if:set="isJava17" />
     494                        <sysproperty key="glass.platform" value="Monocle"/>
     495                        <sysproperty key="monocle.platform" value="Headless"/>
     496                        <sysproperty key="prism.order" value="sw"/>
     497                        <sysproperty key="suppressPermanentFailure" value="${suppressPermanentFailure}"/>
     498                        <sysproperty key="junit.jupiter.execution.parallel.enabled" value="${junit.jupiter.execution.parallel.enabled}" if:set="junit.jupiter.execution.parallel.enabled"/>
     499                        <sysproperty key="junit.jupiter.execution.parallel.mode.default" value="${junit.jupiter.execution.parallel.mode.default}" if:set="junit.jupiter.execution.parallel.mode.default"/>
     500                        <sysproperty key="junit.jupiter.execution.parallel.mode.classes.default" value="${junit.jupiter.execution.parallel.mode.classes.default}" if:set="junit.jupiter.execution.parallel.mode.classes.default"/>
     501                    </fork>
    501502                    <listener type="legacy-brief" sendSysOut="true" sendSysErr="true"/>
    502503                    <listener type="legacy-plain" />
     
    641642        </exec>
    642643    </target>
    643     <target name="check-plugins" depends="dist-optimized" description="Check of plugins binary compatibility" unless="isJava11">
     644    <target name="check-plugins" depends="dist-optimized" description="Check of plugins binary compatibility" unless="isJava21">
     645        <!-- animal_sniffer doesn't support Java 21 yet. The unless statement can be removed after animal_sniffer is updated to 1.24. -->
    644646        <local name="dir"/>
    645647        <local name="plugins"/>
     
    676678                    <regexp pattern="${deprecated-plugins}"/>
    677679                </linecontainsregexp>
    678                 <linecontainsregexp negate="true" unless:set="isJava10">
    679                     <!-- Skip javafx on Java 8/9, built for Java 10+ only -->
    680                     <regexp pattern="javafx.*"/>
     680                <!-- Ideally these would not be hardcoded, and instead read from the manifest file -->
     681                <linecontainsregexp negate="true" unless:set="isJava11">
     682                    <!-- Skip Java 11 plugins -->
     683                    <regexp pattern="(areaselector|http|javafx|josm_magic_wand)\..*"/>
    681684                </linecontainsregexp>
    682                 <linecontainsregexp negate="true" unless:set="isJava11">
    683                     <!-- Skip http2 on Java 8/9/10, built for Java 11+ only -->
    684                     <regexp pattern="http2.*"/>
     685                <linecontainsregexp negate="true" unless:set="isJava17">
     686                    <!-- Skip Java 17 plugins -->
     687                    <regexp pattern="(ImageIO|pmtiles|todo|MapRoulette|mapwithai|contourmerge|scripting)\..*"/>
     688                </linecontainsregexp>
     689                <linecontainsregexp negate="true" unless:set="isJava21">
     690                    <!-- Skip Java 21 plugins -->
     691                    <regexp pattern="FIT\..*"/>
    685692                </linecontainsregexp>
    686693                <tokenfilter>
Note: See TracChangeset for help on using the changeset viewer.