Package com.sun.star.lib.unoloader
Class UnoClassLoader
java.lang.Object
java.lang.ClassLoader
java.security.SecureClassLoader
java.net.URLClassLoader
com.sun.star.lib.unoloader.UnoClassLoader
- All Implemented Interfaces:
- Closeable,- AutoCloseable
The root UNO class loader.
 
This class loader is able to load all published URE classes, including the
 classes representing the published URE UNO types.  For consistency, it is
 important that within each Java UNO environment there is one instance of this
 class loader that is the defining class loader of all published URE classes
 (and hence of all unpublished URE classes, too) and of all classes
 representing UNO types (the published URE UNO types, any unpublished URE UNO
 types, and any additional UNO types introduced by components; for the latter,
 URLClassLoader.addURL(java.net.URL) may be necessary).
This is an internal, unstable class of the Uno Runtime Environment; it should not be used by client code.
- Since:
- UDK 3.2.0
- 
Constructor SummaryConstructorsConstructorDescriptionUnoClassLoader(URL base, URL[] classPath, ClassLoader parent) Instantiates the root UNO class loader.
- 
Method SummaryModifier and TypeMethodDescriptionvoidExecutes a UNO JAR.getClassLoader(URL jar, Attributes mainAttributes) Obtains a class loader for a UNO JAR.static AttributesgetJarMainAttributes(URL jar) Obtains the main section of the manifest of a JAR.Methods inherited from class java.net.URLClassLoaderaddURL, close, definePackage, findClass, findResource, findResources, getPermissions, getResourceAsStream, getURLs, newInstance, newInstanceMethods inherited from class java.security.SecureClassLoaderdefineClass, defineClassMethods inherited from class java.lang.ClassLoaderclearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findClass, findLibrary, findLoadedClass, findResource, findSystemClass, getClassLoadingLock, getDefinedPackage, getDefinedPackages, getName, getPackage, getPackages, getParent, getPlatformClassLoader, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, getUnnamedModule, isRegisteredAsParallelCapable, loadClass, loadClass, registerAsParallelCapable, resolveClass, resources, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSigners
- 
Constructor Details- 
UnoClassLoaderInstantiates the root UNO class loader.- Parameters:
- base- a base URL relative to which the URE JARs (- java_uno.jarand- libreoffice.jar) can be found; must not be- null.
- classPath- an array of URLs that form the class path of this class loader; may be- null, which is the same as an empty array. The URLs are interpreted in the same way as the arguments of a- URLClassLoader.
- parent- the parent class loader for delegation.
- Throws:
- MalformedURLException- if the given- baseURL is malformed.
 
 
- 
- 
Method Details- 
getClassLoaderObtains a class loader for a UNO JAR.- Parameters:
- jar- the URL of a UNO JAR; must not be- null.
- mainAttributes- represents the main section of the manifest of the given JAR- jar;- nullif the given JAR does not have a manifest. (This redundant parameter is there for performance reasons, as typically the caller of this method already has this information available.)
- Returns:
- an appropriate class loader; will never be null.
- Throws:
- MalformedURLException- if the given- jarURL or any of the UNO-Type-Path URLs specified in the given JAR are malformed.
 
- 
executepublic void execute(URL jar, String[] arguments) throws IOException, ClassNotFoundException, NoSuchMethodException, InvocationTargetException Executes a UNO JAR.- Parameters:
- jar- the URL of a UNO JAR that specifies a Main-Class; must not be- null.
- arguments- any arguments passed to the- mainmethod of the specified Main-Class of the given JAR- jar; must not be- null.
- Throws:
- IOException- if there are any problems processing the given JAR- jar.
- ClassNotFoundException- if the given JAR- jardoes not specify a Main-Class, or if the specified Main-Class cannot be found.
- NoSuchMethodException- if the specified Main-Class of the given JAR- jardoes not have an appropriate- mainmethod.
- InvocationTargetException- if an exception occurs while executing the- mainmethod of the specified Main-Class of the given JAR- jar.
 
- 
getJarMainAttributesObtains the main section of the manifest of a JAR.- Parameters:
- jar- the URL of a JAR; must not be- null.
- Returns:
- the representation of the main section of the manifest of the
 given JAR jar, ornullif the given JAR does not have a manifest.
- Throws:
- IOException- if there are any problems processing the given JAR- jar.
 
 
-