Files
processing4/java/mode/plugin.xml
A Pottinger c14695476e Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train.
Moves to Java11 and OpenJDK via AdoptOpenJDK within the processing4 train using a squash of sampottinger processing fork's java11 branch.

**Primary required changes:**
Some changes directly support OpenJFX / OpenJDK 11:

 - Response to image loading changes caused by [JEP 320](https://openjdk.java.net/jeps/320)
 - Use of jmodules as necessitated by [JEP 261](https://openjdk.java.net/jeps/261)
 - Reponse to largely changed file paths caused by [JEP 220](https://openjdk.java.net/jeps/220).
 - Modifications in build system related to AdoptOpenJDK and Java 11 which have a different naming structure for downloads.
 - Allowing use of non-Oracle Java within internal Processing checks.

**Secondary required changes:**
There were some secondary required changes that impacted the usability of Processing after having moved to OpenJFX / OpenJDK 11:

 - Removal of com.apple.eawt calls related to [JEP 272](http://openjdk.java.net/jeps/272)
 - Response to HiDPI support on Windows and Linux in [JEP 263](https://openjdk.java.net/jeps/263)
- Removal of `java.ext.dirs`. Would be forced by [JEP 220](http://openjdk.java.net/jeps/220).
 - Due to bugs on Windows, updated the JNA jars.
 - Changes in downloader build tasks to support AdoptOpenJDK and OpenJFX.
 - Updated org.eclipse.* / equinox jars.
 - Some optimization around size of distribution.
 - Update of AppBundler.
 - Some changes in formulation of classpath and modifications in PreprocessingService given [JEP 261](https://openjdk.java.net/jeps/261).

**Incidental changes:**
This was (ahem) a bit of a larger PR with the above modifications. So, I wanted to introduce automated tests when possible and convenient along with a few changes for platform sustainability in order to support development:

 - Addition of cross-building capability (!) made possible by AdoptOpenJDK.
 - Addition of mockito for testing.
 - Upgrade of junit.
 - Addition of ant-contrib.
 - Standardized nomenclature around JRE / JDK in `build/build.xml`
 - Deduplication of code in `jre/build.xml`.
 - Addition of JavaDoc in a few places.
 - Some refactoring of PImage / Shape to support increased testing and readability in image manipulation code.
2019-10-05 20:49:33 -07:00

314 lines
14 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.0"?>
<!--
Copyright (c) 2004, 2014 IBM Corporation and others.
This program and the accompanying materials
are made available under the terms of the Eclipse Public License 2.0
which accompanies this distribution, and is available at
https://www.eclipse.org/legal/epl-2.0/
SPDX-License-Identifier: EPL-2.0
Contributors:
IBM Corporation - initial API and implementation
Harry Terkelsen (het@google.com) - Bug 449262 - Allow the use of third-party Java formatters
-->
<!-- =================================================================================== -->
<!-- JDT/CORE Plug-in Manifest -->
<!-- =================================================================================== -->
<plugin>
<!-- =================================================================================== -->
<!-- Prerequisite Plug-ins -->
<!-- =================================================================================== -->
<!-- =================================================================================== -->
<!-- Runtime Libraries -->
<!-- =================================================================================== -->
<!-- =================================================================================== -->
<!-- Extension Point: Initializers of Classpath Variables -->
<!-- =================================================================================== -->
<extension-point name="%classpathVariableInitializersName"
id="classpathVariableInitializer"
schema="schema/classpathVariableInitializer.exsd"/>
<!-- =================================================================================== -->
<!-- Extension Point: Initializers of Classpath Containers -->
<!-- =================================================================================== -->
<extension-point name="%classpathContainerInitializersName"
id="classpathContainerInitializer"
schema="schema/classpathContainerInitializer.exsd"/>
<!-- =================================================================================== -->
<!-- Extension Point: Formatter of Source Code -->
<!-- =================================================================================== -->
<extension-point name="%codeFormattersName"
id="codeFormatter"
schema="schema/codeFormatter.exsd"/>
<!-- =================================================================================== -->
<!-- Extension Point: Compilation Participant -->
<!-- =================================================================================== -->
<extension-point name="%compilationParticipantsName"
id="compilationParticipant"
schema="schema/compilationParticipant.exsd"/>
<!-- =================================================================================== -->
<!-- Extension Point: Java 6 Annotation Processor Manager -->
<!-- =================================================================================== -->
<extension-point name="%annotationProcessorManagerName"
id="annotationProcessorManager"
schema="schema/annotationProcessorManager.exsd"/>
<!-- =================================================================================== -->
<!-- Extension Point: Java Source Formatter -->
<!-- =================================================================================== -->
<extension-point name="%javaFormatterName"
id="javaFormatter"
schema="schema/javaFormatter.exsd"/>
<!-- =================================================================================== -->
<!-- Extension: Java Nature -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.core.resources.natures"
id="javanature"
name="%javaNatureName">
<runtime>
<run class="org.eclipse.jdt.internal.core.JavaProject">
</run>
</runtime>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Builder -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.core.resources.builders"
id="javabuilder"
name="%javaBuilderName">
<builder>
<run class="org.eclipse.jdt.internal.core.builder.JavaBuilder">
</run>
<dynamicReference class="org.eclipse.jdt.internal.core.DynamicProjectReferences"/>
</builder>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Problem -->
<!-- =================================================================================== -->
<extension id="problem" point="org.eclipse.core.resources.markers" name="%javaProblemName">
<super type="org.eclipse.core.resources.problemmarker"/>
<super type="org.eclipse.core.resources.textmarker"/>
<persistent value="true"/>
<attribute name="id"/>
<attribute name="flags"/>
<attribute name="arguments"/>
<attribute name="categoryId"/>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Buildpath Problem -->
<!-- =================================================================================== -->
<extension id="buildpath_problem" point="org.eclipse.core.resources.markers" name="%buildPathProblemName">
<super type="org.eclipse.core.resources.problemmarker"/>
<super type="org.eclipse.core.resources.textmarker"/>
<persistent value="true"/>
<attribute name ="cycleDetected"/>
<attribute name="id"/>
<attribute name="arguments"/>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Transient Problem -->
<!-- =================================================================================== -->
<extension id="transient_problem" point="org.eclipse.core.resources.markers" name="%transientJavaProblemName">
<super type="org.eclipse.core.resources.textmarker"/>
<persistent value="false"/>
<attribute name="id"/>
<attribute name="flags"/>
<attribute name="arguments"/>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Task -->
<!-- =================================================================================== -->
<extension id="task" name="%javaTaskName" point="org.eclipse.core.resources.markers">
<super type="org.eclipse.core.resources.taskmarker"/>
<persistent value="true"/>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Javac Ant Adapter -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.ant.core.extraClasspathEntries">
<extraClasspathEntry
library="jdtCompilerAdapter.jar">
</extraClasspathEntry>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Javac Ant Task -->
<!-- =================================================================================== -->
<extension point="org.eclipse.ant.core.antTasks">
<antTask
name="eclipse.checkDebugAttributes"
class="org.eclipse.jdt.core.CheckDebugAttributes"
library="jdtCompilerAdapter.jar">
</antTask>
<antTask
name="eclipse.buildJarIndex"
class="org.eclipse.jdt.core.BuildJarIndex"
library="jdtCompilerAdapter.jar">
</antTask>
</extension>
<!-- =================================================================================== -->
<!-- Extension: User Library Container -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.jdt.core.classpathContainerInitializer">
<classpathContainerInitializer
class="org.eclipse.jdt.internal.core.UserLibraryClasspathContainerInitializer"
id="org.eclipse.jdt.USER_LIBRARY">
</classpathContainerInitializer>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Module Path Container -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.jdt.core.classpathContainerInitializer">
<classpathContainerInitializer
class="org.eclipse.jdt.internal.core.ModulePathContainerInitializer"
id="org.eclipse.jdt.MODULE_PATH">
</classpathContainerInitializer>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java File Types -->
<!-- =================================================================================== -->
<extension point="org.eclipse.team.core.fileTypes">
<fileTypes extension="java" type="text"/>
<fileTypes extension="classpath" type="text"/>
<fileTypes extension="properties" type="text"/>
<fileTypes extension="class" type="binary"/>
<fileTypes extension="jar" type="binary"/>
<fileTypes extension="jardesc" type="text"/>
<fileTypes extension="zip" type="binary"/>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Code Formatter -->
<!-- =================================================================================== -->
<extension
id="JavaCodeFormatter"
point="org.eclipse.core.runtime.applications">
<application>
<run class="org.eclipse.jdt.core.formatter.CodeFormatterApplication" />
</application>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Generate Indexer -->
<!-- =================================================================================== -->
<extension
id="JavaIndexer"
point="org.eclipse.core.runtime.applications">
<application>
<run class="org.eclipse.jdt.core.index.JavaIndexerApplication" />
</application>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Content Types -->
<!-- =================================================================================== -->
<extension point="org.eclipse.core.contenttype.contentTypes">
<!-- declares a content type for Java Properties files -->
<content-type id="javaProperties" name="%javaPropertiesName"
base-type="org.eclipse.core.runtime.text"
priority="high"
file-extensions="properties"
default-charset="ISO-8859-1"/>
<!-- Associates .classpath to the XML content type -->
<file-association
content-type="org.eclipse.core.runtime.xml"
file-names=".classpath"/>
<!-- declares a content type for Java Source files -->
<content-type id="javaSource" name="%javaSourceName"
base-type="org.eclipse.core.runtime.text"
priority="high"
file-extensions="java"/>
<!-- declares a content type for Java class files -->
<content-type id="javaClass" name="%javaClassName"
priority="high"
file-extensions="class">
<describer
class="org.eclipse.core.runtime.content.BinarySignatureDescriber">
<parameter name="signature" value="CA, FE, BA, BE"/>
</describer>
</content-type>
<!-- declares a content type for JAR manifest files -->
<content-type id="JARManifest" name="%jarManifestName"
base-type="org.eclipse.core.runtime.text"
priority="high"
file-names="MANIFEST.MF"
default-charset="UTF-8"/>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Eclipse preferences initializer -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.core.runtime.preferences">
<initializer class="org.eclipse.jdt.internal.core.JavaCorePreferenceInitializer"/>
</extension>
<extension
point="org.eclipse.core.runtime.preferences">
<modifier class="org.eclipse.jdt.internal.core.JavaCorePreferenceModifyListener"/>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Eclipse tracing -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.ui.trace.traceComponents">
<component
id="org.eclipse.jdt.core.trace"
label="%traceComponentLabel">
<bundle
consumed="false"
name="org.eclipse.jdt.core">
</bundle>
</component>
</extension>
<!-- =================================================================================== -->
<!-- Extension: Java Code Formatter -->
<!-- =================================================================================== -->
<extension
point="org.eclipse.jdt.core.javaFormatter">
<javaFormatter
class="org.eclipse.jdt.internal.formatter.DefaultCodeFormatter"
id="org.eclipse.jdt.core.defaultJavaFormatter"
name="%defaultJavaFormatterName">
</javaFormatter>
</extension>
</plugin>