|
org.openide.modules 7.7.1 | |||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
See:
Description
| Module System API | |
|---|---|
| org.openide.modules | NetBeans is capable of being extended by pluggable modules providing additional functionality. |
Packages supplied in a module which overlap those in the JRE or its extensions will normally be ignored (as usual, the JRE takes precedence). Modules which wish to specifically suppress loading of some packages from the classpath can now request the class loader to do so by specifying:
OpenIDE-Module-Hide-Classpath-Packages: javax.lang.model.*, com.sun.source.**
(The syntax is analogous to that of OpenIDE-Module-Public-Packages.)
Such a declaration affects not just this module, but any other modules declaring a direct
dependency on it (OpenIDE-Module-Module-Dependencies). The module is now free to bundle
its own versions of these classes and be sure they will be used by it and its clients.
Be aware that as with all changes to the normal class loading scheme,
careless usage could result in LinkageErrors.
FileObject
Modules used to be able to obtain their own entries as file objects, e.g.:
FileObject f = URLMapper.findFileObject(ThisClass.class.getResource("something.xml"));
This is no longer supported. Client code should either use module classpath entries directly as URLs; or register files of interest in the XML layer and refer to them using the system filesystem.
Modules can now express dependencies on
org.openide.modules.os.Linux and
org.openide.modules.os.Solaris.
For more details read here.
FileObjects created on XML layer now support a new
attribute "removeWritables" returning an instance of
Callable which removes the local writable version of the
given FileObject thus reverting the folder or file to
its initial state as defined in XML layers. Please note that is *not*
possible to reset FileObject's attributes.
It is possible to require some implementation using
OpenIDE-Module-Needs: token which is slightly
less restrictive than usual
OpenIDE-Module-Requires: token as
explain in the documentation.
|
|
Read more about the implementation in the answers to architecture questions.
|
org.openide.modules 7.7.1 | |||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||