NetBeans Architecture Answers for Startup module


Interfaces table

Group of java interfaces
Interface NameIn/OutStabilitySpecified in What Document?
ExceptionAnnotatableUsingLogRecordsImportedFriend

The module is needed for compilation. The module is used during runtime. Specification version 2.61 is required.

FilesystemsAPIImportedOfficial

The module is needed for compilation. The module is used during runtime. Specification version 9.0 is required.

ModulesAPIImportedOfficial

The module is needed for compilation. The module is used during runtime. Specification version 7.41 is required.

UtilitiesAPIImportedOfficial

The module is needed for compilation. The module is used during runtime. Specification version 9.3 is required.

WeakListener.setAccessibleImportedUnder Development

The module is needed for compilation. The module is used during runtime. Specification version 9.3 is required.

LookupAPIImportedOfficial

The module is needed for compilation. The module is used during runtime. Specification version 8.1 is required.

org.netbeans.libs.asmImportedPrivate

The module is needed for compilation. The module is used during runtime. Specification version 5.0 is required.

org.netbeans.core.startup.baseImportedPrivate

The module is needed for compilation. The module is used during runtime.

JaveleonImportedFriend .../bugzilla/show_bug.cgi?id=195074

When present as a Java agent on the boot classpath, Javeleon is invoked reflectively to enhance module reloading.

Group of systemproperty interfaces
Interface NameIn/OutStabilitySpecified in What Document?
org.netbeans.log.startupExportedFriend

If started with -J-Dorg.netbeans.log.startup=print parameter, then times of various start operations are printed to console. If the value is -J-Dorg.netbeans.log.startup=file then the values are printed into file specified by -J-Dorg.netbeans.log.startup.logfile=filename. Since NetBeans 7.1 one can also fill in the file by standard XML format of log messages by using -J-Dorg.netbeans.log.startup=xml.

Moreover if any module logs data to Logger.getLogger("org.netbeans.log.startup") with calls like log(Level.FINE, "start", "msg") and log(Level.FINE, "end", "msg") or log(Level.FINE, "progress", "msg"), then these messages are collected into the start log as well.

netbeans.logger.noSystemExportedFriend

Allows unit tests to prevent changes to System.err and System.out by the logging infrastructure.

org.netbeans.log.numberOfFilesExportedFriend

Changes the number of files used for log rotation. If started with -J-Dorg.netbeans.log.numberOfFiles=number then the log files for number-1 previous executions will be preserved. Default and minimum number is 3.

org.netbeans.core.startup.ModuleList.firstModuleJarWinsExportedFriend

Disables #113341 so that the first version of a module JAR to be encountered is loaded, even if a later cluster contains a newer version of the same module.

org.netbeans.core.systemfilesystem.customExportedUnder Development

This property can contain name of a class implementing FileSystem with a public default constructor. Such filesystem is then used during initialization of writable layer of system file system (see getConfigRoot). The filesystem may use or may ignore value of System.getProperty("netbeans.user").

Note: The class is loaded sooner then modules are initialized, as such the class providing it must be from a JAR file placed in to $cluster/core/ directory. Such JAR may have just a limited dependencies - e.g. only module system and filesystem API.

netbeans.bootdelegationExportedUnder Development

Similar to OSGi's org.osgi.framework.bootdelegation property. Allows unit tests (or even regular code) to prevent classloading from application classloader for other, then explicitly enumerated packages.

This property shall contain a set of comma separated values of package names. Classes from those packages will be loaded by the classloader framework from application classloader. If the name of a package ends with .* suffix, all packages under the given package name are allowed for delegation (but not the package by itself).

The classes from the java.* namespace are allowed and do not need to be enumerated at all. If this property is not specified at all, all classes visible by the application classloader can be accessed. Available since version 1.26.

netbeans.productversionExportedUnder Development

This property includes the display name presented to the user as Product Version in the About dialog box and in the log file.

org.netbeans.core.update.all.resourcesExportedUnder Development

Some applications built on top of NetBeans Platform expressed an option that certain files in caches, namely all-resources.dat can be too big and that this is not good for multi-user installation. To give such applications control over creation of this file, there is a property to (conditionally) disable the creation of the cache file.

Change value of org.netbeans.core.update.all.resources property in launcher configuration file or provide it as a virtual machine parameter on command line. Set it to never, always or missing. The default is to regenerate and update the cache always. Value missing means to generate the cache only if it has not been previously available (even in installation location). Setting the value to never will disable the creation of the cache after start completely.

Changing default value of the property may be particulary useful when there is a shared installation of the application, there are many users with a home (and cache) directory on a slow (network) file system and it is expected most of them won't install additional modules into their own user directory.


General Information


Project and platform dependencies


Deployment


Compatibility with environment


Access to resources


Lookup of components


Execution Environment


Format of files and protocols


Performance and Scalability


Built on October 23 2017.  |  Portions Copyright 1997-2017 Oracle. All rights reserved.