This document lists changes made to the Java Platform API.
Fuller descriptions of all changes can be found below (follow links).
Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.
isValid
method into JavaPlatform
Specification.getDisplayName
returning
the user friendly name of the platform specification.
These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled 1.20, your manifest should contain in its main attributes the line:
OpenIDE-Module-Module-Dependencies: org.netbeans.modules.java.platform/1 > 1.20
isValid
method into JavaPlatform
Specification.getDisplayName
returning
the user friendly name of the platform specification.
org.netbeans.spi.java.platform.CustomPlatformInstall
org.netbeans.spi.java.platform.support.ForwardingJavaPlatform
org.netbeans.spi.java.platform.GeneralPlatformInstall
org.netbeans.api.java.platform.JavaPlatform
isValid
method into JavaPlatform
org.netbeans.spi.java.platform.JavaPlatformFactory
org.netbeans.api.java.platform.Specification
Specification.getDisplayName
returning
the user friendly name of the platform specification.
isValid
method into JavaPlatform
JavaPlatform
; made by: tzezula
Added a isValid
method into JavaPlatform
to check platform validity. The platform is non valid when it's deleted
or an platform tool (java, javac) is missing or bootstrap libraries are missing.
JavaPlatformFactory
ForwardingJavaPlatform
; made by: tzezula
Added a SPI allowing JavaPlatform
implementors
to export ability to create a new JavaPlatform
.
The following classes were moved into the org.netbeans.java.platform.ui module:
Runtime compatibility remains, compile time compatibility is
mostly preserved too. It is however recommended to upgrade
dependencies of client modules. Try running
ant fix-dependencies
in your Ant module.
Specification.getDisplayName
returning
the user friendly name of the platform specification.
Specification
; made by: tzezula; issues:
#198834
Specification.getDisplayName
returning
the user friendly name of the platform specification.
JavaPlatformManager.getDefaultPlatform
could formerly return null, in case no installed
providers returned an instance; typically this
would be due to some storage problem. In the
interests of robustness, it will now as a fallback
return a simple platform instance corresponding
the JRE hosting the NetBeans code. Optional
capabilities may be missing so avoid relying on
this fallback platform implementation.
Code which previously handled null return values but expected any returned platform instance to meet certain criteria, such as having JDK tool bindings, may be broken.
org.netbeans.spi.java.platform.CustomPlatformInstall
org.netbeans.spi.java.platform.GeneralPlatformInstall
; made by: tzezula; issues:
#61475
There are some platform installers which does not use the local disk as source of the java platform, for example they download the java platform from the web. Such installers cannot use the current PlatformInstall which is file oriented. The CustomPlatformInstall allows to platform install provider to implement its own way of installing the new platform. The PlatformInstall is still supported. If the module provides the PlatformInstall in the global lookup, the java platform module does the java platform chooser for it, the behavior is not changed. If the module provides the CustomPlatformInstall in the global lookup, it has to do the platform selection by itself.
The relevant code was moved off to java.platform.ui
module. Please
see it's
API change document.
To indicate that this is now considered a stable API, the major release version was incremented to 1 from 0.
Clients should begin requesting the new version to avoid a warning at startup.