This document lists changes made to the Java Common 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.
ProjectProperties
QuerySupport
to create a module-info based AccessibilityQueryImplementation2
instance
QuerySupport
to create unit tests CompilerOptionsQueryImplementation
provider
QuerySupport
to createCompilerOptionsQueryImplementation
provider
ProjectProperties
ProjectUISupport.showVMOptionCustomizer
SourceLevelQueryImplementation2
factory for non J2SE platform
ProjectOperations
support for project operations in Ant based project.
ProjectConfigurations
support for ProjectConfiguration
s in Ant base project.
LibrariesNode.Builder
to create configured LibrariesNode
.
LogicalViewProviders
support to create default implementation of the LogicalViewProvider2
.
ProjectHooks
factory to create default implementation of the ProjectOpenedHook
and the ProjectXmlSavedHook}
.
ProjectProperties
by additional common project properties
BootClassPathImplementation
and ClassPathProviderImpl
to support non j2se platforms
BaseActionProvider.Callback3
with a method providing additional build properties.
PackageModificationImplementation
LibraryImplementation3
for ant and maven projects.
ClassPathModifierSupport.handleAntArtifacts
correctly updating the build-impl.xml
PlatformUiSupport.storePlatform
with updatePreferredPlatform
parameter
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.api.common > 1.20
ProjectProperties
QuerySupport
to create a module-info based AccessibilityQueryImplementation2
instance
QuerySupport
to create unit tests CompilerOptionsQueryImplementation
provider
QuerySupport
to createCompilerOptionsQueryImplementation
provider
ProjectProperties
ProjectUISupport.showVMOptionCustomizer
SourceLevelQueryImplementation2
factory for non J2SE platform
ProjectOperations
support for project operations in Ant based project.
ProjectConfigurations
support for ProjectConfiguration
s in Ant base project.
LibrariesNode.Builder
to create configured LibrariesNode
.
LogicalViewProviders
support to create default implementation of the LogicalViewProvider2
.
ProjectHooks
factory to create default implementation of the ProjectOpenedHook
and the ProjectXmlSavedHook}
.
ProjectProperties
by additional common project properties
BootClassPathImplementation
and ClassPathProviderImpl
to support non j2se platforms
BaseActionProvider.Callback3
with a method providing additional build properties.
PackageModificationImplementation
LibraryImplementation3
for ant and maven projects.
ClassPathModifierSupport.handleAntArtifacts
correctly updating the build-impl.xml
PlatformUiSupport.storePlatform
with updatePreferredPlatform
parameter
org.netbeans.modules.java.api.common.project.ui.customizer.AntArtifactItem
org.netbeans.modules.java.api.common.project.BaseActionProvider
BaseActionProvider.Callback3
with a method providing additional build properties.
org.netbeans.modules.java.api.common.classpath.ClassPathExtender
org.netbeans.modules.java.api.common.project.ui.customizer.ClassPathListCellRenderer
org.netbeans.modules.java.api.common.classpath.ClassPathModifier
org.netbeans.modules.java.api.common.classpath.ClassPathModifierSupport
ClassPathModifierSupport.handleAntArtifacts
correctly updating the build-impl.xml
org.netbeans.modules.java.api.common.classpath.ClassPathProviderImpl
BootClassPathImplementation
and ClassPathProviderImpl
to support non j2se platforms
org.netbeans.modules.java.api.common.classpath.ClassPathSupport
org.netbeans.modules.java.api.common.classpath.ClassPathSupportFactory
BootClassPathImplementation
and ClassPathProviderImpl
to support non j2se platforms
org.netbeans.modules.java.api.common.project.ui.ClassPathUiSupport
org.netbeans.modules.java.api.common.util.CommonProjectUtils
BootClassPathImplementation
and ClassPathProviderImpl
to support non j2se platforms
LibraryImplementation3
for ant and maven projects.
org.netbeans.modules.java.api.common.project.ui.customizer.CustomizerProvider2
org.netbeans.modules.java.api.common.project.ui.customizer.EditMediator
org.netbeans.modules.java.api.common.project.ui.JavaSourceNodeFactory
org.netbeans.modules.java.api.common.project.ui.LibrariesNode
LibrariesNode.Builder
to create configured LibrariesNode
.
org.netbeans.modules.java.api.common.project.ui.LogicalViewProvider2
org.netbeans.modules.java.api.common.project.ui.LogicalViewProviders
LogicalViewProviders
support to create default implementation of the LogicalViewProvider2
.
org.netbeans.modules.java.api.common.queries.MultiModuleGroupQuery
org.netbeans.modules.java.api.common.ui.PlatformFilter
org.netbeans.modules.java.api.common.ui.PlatformUiSupport
PlatformUiSupport.storePlatform
with updatePreferredPlatform
parameter
org.netbeans.modules.java.api.common.project.ProjectConfigurations
org.netbeans.modules.java.api.common.project.ProjectHooks
ProjectHooks
factory to create default implementation of the ProjectOpenedHook
and the ProjectXmlSavedHook}
.
org.netbeans.modules.java.api.common.project.ProjectOperations
org.netbeans.modules.java.api.common.project.ProjectProperties
ProjectProperties
ProjectProperties
ProjectProperties
by additional common project properties
org.netbeans.modules.java.api.common.project.ui.ProjectUISupport
ProjectUISupport.showVMOptionCustomizer
org.netbeans.modules.java.api.common.queries.QuerySupport
QuerySupport
to create a module-info based AccessibilityQueryImplementation2
instance
QuerySupport
to create unit tests CompilerOptionsQueryImplementation
provider
QuerySupport
to createCompilerOptionsQueryImplementation
provider
SourceLevelQueryImplementation2
factory for non J2SE platform
org.netbeans.modules.java.api.common.Roots
org.netbeans.modules.java.api.common.project.ui.customizer.SourceRootsUi
QuerySupport
MultiModuleGroupQuery
; made by: sdedic
MultiModuleGroupQuery
query interface allows to find out which module owns
a particular SourceGroup
. Project implementors can create an instance
using new query method on QuerySupport
.
ProjectProperties
ProjectProperties
; made by: sdedic
Added BUILD_TEST_MODULES_DIR
to denote build location for tests in modular projects
PlatformUiSupport
; made by: tzezula
Platform combobox created by PlatformUiSupport
handles
per project JavaPlatform
s.
ClassPathProviderImpl
ClassPathSupportFactory
; made by: tzezula
Boot ClassPath created by ClassPathProviderImpl
uses a JavaPlatform
defined in project.
QuerySupport
to create a module-info based AccessibilityQueryImplementation2
instance
QuerySupport
; made by: tzezula
Added a factory method into QuerySupport
to create a module-info based AccessibilityQueryImplementation2
instance.
QuerySupport
to create unit tests CompilerOptionsQueryImplementation
provider
QuerySupport
; made by: tzezula
Added a factory method into QuerySupport
to create an implementation of the
CompilerOptionsQueryImplementation
providing explicit compiler options for
tests compilation based on the source level and module-infos in source and test roots.
QuerySupport
to createCompilerOptionsQueryImplementation
provider
QuerySupport
; made by: tzezula
Added a factory method into QuerySupport
to create an Ant property based implementation of
the CompilerOptionsQueryImplementation
.
ProjectProperties
ProjectProperties
; made by: tzezula
Added constants holding the modulepath property names into theProjectProperties
.
The following constants were added JAVAC_MODULEPATH
, JAVAC_TEST_MODULEPATH
,
RUN_MODULEPATH
,RUN_TEST_MODULEPATH
,
DEBUG_MODULEPATH
,DEBUG_TEST_MODULEPATH
.
ProjectUISupport.showVMOptionCustomizer
ProjectUISupport
; made by: tstupka; issues:
#251934
Moved the java VM options customizer from java.j2seproject
to java.api.common
and
added a utility method to open a java VM options customizer - ProjectUISupport.showVMOptionCustomizer
so that it is possible to use the customizer from j2se projects as well as from maven java projects.
SourceLevelQueryImplementation2
factory for non J2SE platform
QuerySupport
; made by: tzezula
Added a SourceLevelQueryImplementation2
factory for non J2SE platform.
LibrariesNode
; made by: tzezula
Added possibility to override project's bootstrap libraries.
In case when project's bootstrap libraries differ from JavaPlatform
's bootstrap libraries
the LibrariesNode.Builder.setBootPath
method can be used to override the shown platform's libraries.
ClassPathProviderImpl
; made by: tzezula
Added possibility to create project's boot classpath based on project properties rather than project's platform bootstrap libraries.
BaseActionProvider
; made by: tzezula
Added possibility to override main class check and main class selection.
ProjectOperations
support for project operations in Ant based project.
ProjectOperations
; made by: tzezula
Added ProjectOperations
support for project operations in Ant based project..
ProjectConfigurations
support for ProjectConfiguration
s in Ant base project.
ProjectConfigurations
; made by: tzezula
Added ProjectConfigurations
support for ProjectConfiguration
s in Ant base project.
LibrariesNode.Builder
to create configured LibrariesNode
.
LibrariesNode
; made by: tzezula
Added LibrariesNode.Builder
to create configured LibrariesNode
.
LogicalViewProviders
support to create default implementation of the LogicalViewProvider2
.
LogicalViewProviders
; made by: tzezula
Added LogicalViewProviders
support to create default implementation of the LogicalViewProvider2
for Ant Based Project.
ProjectHooks
factory to create default implementation of the ProjectOpenedHook
and the ProjectXmlSavedHook}
.
ProjectHooks
; made by: tzezula
Added ProjectHooks
factory to create default implementation of the ProjectOpenedHook
and ProjectXmlSavedHook
.
ProjectProperties
by additional common project properties
ProjectProperties
; made by: tzezula
Extended ProjectProperties
by additional common project properties used by shared queries and
project generators.
BootClassPathImplementation
and ClassPathProviderImpl
to support non j2se platforms
ClassPathProviderImpl
ClassPathSupportFactory
CommonProjectUtils
; made by: tzezula
Extended BootClassPathImplementation
and ClassPathProviderImpl
to support non j2se platforms.
BaseActionProvider.Callback3
with a method providing additional build properties.
BaseActionProvider
; made by: tzezula
Added BaseActionProvider.Callback3
interface with a method providing additional build properties.
PlatformUiSupport
; made by: tzezula
Added utility methodPlatformUiSupport.getProfile
returning a Profile
for a key obtained from profile model.
PlatformUiSupport
; made by: psomol; issues:
#229161
Addded interface CustomizerProvider3
extending CustomizerProvider2
that enables to close project's customizer if it is currently open using
method cancelCustomizer()
.
PlatformFilter
; made by: psomol; issues:
#212238
Added interface PlatformFilter
to enable filtering out
Java Platforms from UI lists. The primary usecase is to enable
projects that are extensions of SE project to hook into project
UI provided by SE project. More specifically, FX projects need
to hide non-FX platforms in Project Properties panels belonging to SE.
PackageModificationImplementation
Added new API PackageModificationImplementation
which serves as backend for action to set given package as public or private.
Only applies on packages/folders that are handled by AccessibilityQuery
(a non null result is returned from the query) that are in projects
providing this interface's implementation in project lookup.
PlatformUiSupport
; made by: tzezula; issues:
#226713
Addded factory methods to PlatformUiSupport
to create
a model and renderer for JDK 8 profiles.
LibraryImplementation3
for ant and maven projects.
CommonProjectUtils
; made by: tzezula; issues:
#217340
Added a helper method creating default implementation of the LibraryImplementation3
interface for both Ant and Maven projects.
ClassPathModifierSupport.handleAntArtifacts
correctly updating the build-impl.xml
ClassPathModifierSupport
; made by: tzezula; issues:
#213175
Added ClassPathModifierSupport.handleAntArtifacts
which removes the unused artifact reference and
correctly regenerates the build-impl.xml not to build the removed project.
Added ClassPathModifierSupport.handleRoots
which removes the unused file reference.
PlatformUiSupport.storePlatform
with updatePreferredPlatform
parameter
PlatformUiSupport
; made by: tzezula; issues:
#208528
Added PlatformUiSupport.storePlatform
with updatePreferredPlatform
parameter allowing
the API clients to specify if the PreferredProjectPlatform
should be updated.
BaseActionProvider
; made by: phejl; issues:
#197838
Added methods to track ant invocation from subclasses.
QuerySupport
; made by: tzezula; issues:
#185031
Added a factory method to create default ant project based SourceLevelQueryImplementation2.
Roots
QuerySupport
; made by: tzezula; issues:
#148320
Adding a factory method for creating a mutable Sources implemenation which allows adding (removing) of roots.
BaseActionProvider
; made by: dkonecny; issues:
#171153
J2SE implementations of ActionProvider was turned into friend API so that EE project types can reuse most of Java specific code without duplicating it.
QuerySupport
; made by: mvfranz; issues:
#110886
Created a reusable implementation of ProjectInformation that can be used within the Java language projects. Provide two factory methods for creation in QuerySupport, one that uses AntProjectHelper and one that uses UpdateHelper.
ClassPathProviderImpl
ProjectProperties
EditMediator
QuerySupport
; made by: jlahoda; issues:
#179749
Adding support for AnnotationProcessingQuery, and related API changes.
ClassPathSupportFactory
ClassPathSupport
ClassPathProviderImpl
; made by: dkonecny; issues:
#172952
Add ability to create bootclasspath with given endorsed libraries.
ClassPathExtender
ClassPathModifier
ClassPathModifierSupport
ClassPathProviderImpl
ClassPathSupportFactory
ClassPathSupport
ProjectProperties
ClassPathUiSupport
JavaSourceNodeFactory
LibrariesNode
LogicalViewProvider2
ProjectUISupport
AntArtifactItem
ClassPathListCellRenderer
CustomizerProvider2
EditMediator
SourceRootsUi
; made by: dkonecny; issues:
#150357
Make code implementing J2SE support in project type reusable. Originally around NetBeans 4.0 most of this code was copy and pasted from java.j2seproject to several other project types and kept in synch ever since. This change eliminates duplicity of the code and refactors as much of J2SE support specific code to java.api.common module as possible.