public class MLet extends URLClassLoader implements MLetMBean, MBeanRegistration, Externalizable
的MLET标签具有以下语法:
< MLET
CODE = 班 | OBJECT = serfile
ARCHIVE = "archivelist"
[CODEBASE = codebaseurl]
[NAME = mbeanname]
z-6aa2eb7c-d8d8-4ccb—9bc0-a2fb0c5e5f04版本]
>
[参数列表]
/MLET > <
哪里:
CODE =
班
.class文件编译的MBean必须包含在一个由
ARCHIVE属性指定的
.jar文件。无论是
CODE或
OBJECT必须在场。
OBJECT =
serfile
.ser文件。这个文件必须包含在一个由
ARCHIVE属性指定的
.jar文件。如果
.jar文件包含一个指定的目录层次,在这个层次的文件的路径。否则将找不到匹配的。无论是
CODE或
OBJECT必须在场。
ARCHIVE = "
archivelist
"
.jar文件。其中的一个
.jar文件必须包含指定的文件的
CODE或
OBJECT属性。如果archivelist包含多个文件:
.jar文件
archivelist必须存储的代码库的URL指定的目录。
CODEBASE =
codebaseurl
ARCHIVE属性指定的
.jar文件的目录。只有
.jar文件不在同一个目录下的文本文件中指定此属性m-let。如果这个属性没有被指定,该m-let文本文件的基URL使用。
NAME =
mbeanname
MBeanServer.getDefaultDomain()。
VERSION =
版本
.jar。这个版本号可以用于指定的
.jar文件加载从服务器更新存储在本地缓存中的下一次m-let文本文件加载。
版本必须进行一系列的非负十进制整数每相隔一段从一个之前。
ARG TYPE=
argumenttype
VALUE=
价值 >
在参数列表中的参数的类型应该是一个java的原始类型或java基本类型(java.lang.Boolean, java.lang.Byte, java.lang.Short, java.lang.Long, java.lang.Integer, java.lang.Float, java.lang.Double, java.lang.String)。
的m-let服务延伸java.net.URLClassLoader可以用于代理的虚拟机加载远程类的jar文件。
注—的MLet类加载器使用的MBeanServerFactory.getClassLoaderRepository(javax.management.MBeanServer)加载类,不能在加载的jar文件中找到。
| Constructor and Description |
|---|
MLet()
构建了一种新的熔体使用默认母ClassLoader代表团。
|
MLet(URL[] urls)
构建了一种新的熔体为指定的URL使用默认母ClassLoader代表团。
|
MLet(URL[] urls, boolean delegateToCLR)
构建了一种新的熔体为指定的URL使用默认母ClassLoader代表团。
|
MLet(URL[] urls, ClassLoader parent)
构建了一种新的熔体为给定的URL。
|
MLet(URL[] urls, ClassLoader parent, boolean delegateToCLR)
构建了一种新的熔体为给定的URL。
|
MLet(URL[] urls, ClassLoader parent, URLStreamHandlerFactory factory)
构建了一种新的熔体为指定的URL,父类装载器,并urlstreamhandlerfactory。
|
MLet(URL[] urls, ClassLoader parent, URLStreamHandlerFactory factory, boolean delegateToCLR)
构建了一种新的熔体为指定的URL,父类装载器,并urlstreamhandlerfactory。
|
| Modifier and Type | Method and Description |
|---|---|
void |
addURL(String url)
将指定的URL的URL列表搜索类和资源。
|
void |
addURL(URL url)
将指定的URL的URL列表搜索类和资源。
|
protected URL |
check(String version, URL codebase, String jarfile, MLetContent mlet)
该方法被重写时,将服务支持缓存和版本控制。
|
protected 类<?> |
findClass(String name)
这是正在重新定义的类装载器的主要方法。
|
protected String |
findLibrary(String libname)
返回本地库的绝对路径名。
|
String |
getLibraryDirectory()
获取库装载机在将它们加载到内存之前存储的当前目录。
|
Set<Object> |
getMBeansFromURL(String url)
加载一个包含熔体标签定义要添加到MBean服务器的MBean的文本文件。
|
Set<Object> |
getMBeansFromURL(URL url)
加载一个包含熔体标签定义要添加到MBean服务器的MBean的文本文件。
|
URL[] |
getURLs()
返回加载类和资源的网址的搜索路径。
|
类<?> |
loadClass(String name, ClassLoaderRepository clr)
加载一个类,使用给定的
ClassLoaderRepository如果类不在熔体的网址找到。
|
void |
postDeregister()
让m-let执行任何操作在MBean服务器被注册后需要。
|
void |
postRegister(Boolean registrationDone)
让m-let执行任何操作在MBean服务器或注册后不需要注册后。
|
void |
preDeregister()
让m-let执行任何操作之前,需要注册的MBean服务器。
|
ObjectName |
preRegister(MBeanServer server, ObjectName name)
让m-let执行任何操作之前,它需要在MBean服务器注册。
|
void |
readExternal(ObjectInput in)
从给定的
ObjectInput恢复该熔体的含量。
|
void |
setLibraryDirectory(String libdir)
设置库装载程序用于在它们被加载到内存之前存储本地库的目录。
|
void |
writeExternal(ObjectOutput out)
保存该熔体的内容给出的
ObjectOutput。
|
close, definePackage, findResource, findResources, getPermissions, getResourceAsStream, newInstance, newInstancedefineClass, defineClassclearAssertionStatus, defineClass, defineClass, defineClass, defineClass, definePackage, findLoadedClass, findSystemClass, getClassLoadingLock, getPackage, getPackages, getParent, getResource, getResources, getSystemClassLoader, getSystemResource, getSystemResourceAsStream, getSystemResources, loadClass, loadClass, registerAsParallelCapable, resolveClass, setClassAssertionStatus, setDefaultAssertionStatus, setPackageAssertionStatus, setSignersclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetResource, getResourceAsStream, getResourcespublic MLet()
public MLet(URL[] urls)
urls -从加载的类和资源的URL。
public MLet(URL[] urls, ClassLoader parent)
urls -从加载的类和资源的URL。
parent -代表父类装载器。
public MLet(URL[] urls, ClassLoader parent, URLStreamHandlerFactory factory)
urls -从加载的类和资源的URL。
parent -代表父类装载器。
factory - urlstreamhandlerfactory创建URL时使用。
public MLet(URL[] urls, boolean delegateToCLR)
urls -从加载的类和资源的URL。
delegateToCLR -如果,当一个类不在父类加载器或URL发现,熔体应委托其含有的
ClassLoaderRepository MBeanServer。
public MLet(URL[] urls, ClassLoader parent, boolean delegateToCLR)
urls -从加载的类和资源的URL。
parent -代表父类装载器。
delegateToCLR -如果,当一个类不在父类加载器或URL发现,熔体应委托其含有的
ClassLoaderRepository MBeanServer。
public MLet(URL[] urls, ClassLoader parent, URLStreamHandlerFactory factory, boolean delegateToCLR)
urls -从加载的类和资源的URL。
parent -代表父类装载器。
factory - urlstreamhandlerfactory创建URL时使用。
delegateToCLR -如果,当一个类不在父类加载器或URL发现,熔体应委托其含有的
ClassLoaderRepository MBeanServer。
public void addURL(URL url)
addURL 接口
MLetMBean
addURL 方法重写,继承类
URLClassLoader
url的URL添加到URL搜索路径
public void addURL(String url) throws ServiceNotFoundException
addURL 接口
MLetMBean
url - URL添加。
ServiceNotFoundException -指定的URL格式不正确。
public URL[] getURLs()
getURLs 接口
MLetMBean
getURLs 方法重写,继承类
URLClassLoader
public Set<Object> getMBeansFromURL(URL url) throws ServiceNotFoundException
getMBeansFromURL 接口
MLetMBean
url -文本文件被加载的URL的URL对象。
ServiceNotFoundException -下列错误发生的m-let:文本文件不包含的m-let熔体标签,文本文件没有找到,没有指定标签强制熔体属性,URL的值为空。
IllegalStateException - MLet MBean是不是一个注册MBeanServer。
public Set<Object> getMBeansFromURL(String url) throws ServiceNotFoundException
getMBeansFromURL 接口
MLetMBean
url -文本文件被加载的URL字符串对象。
ServiceNotFoundException -下列错误发生的m-let:文本文件不包含的m-let熔体标签,文本文件没有找到,没有指定标签强制熔体属性,URL是畸形。
IllegalStateException - MLet MBean是不是一个注册MBeanServer。
public String getLibraryDirectory()
getLibraryDirectory 接口
MLetMBean
UnsupportedOperationException如果实现不支持存储本Map书馆这样。
setLibraryDirectory(java.lang.String)
public void setLibraryDirectory(String libdir)
setLibraryDirectory 接口
MLetMBean
libdir由库加载器使用的目录。
UnsupportedOperationException如果实现不支持存储本Map书馆这样。
getLibraryDirectory()
public ObjectName preRegister(MBeanServer server, ObjectName name) throws 异常
preRegister 接口
MBeanRegistration
server的MBean服务器中的m-let将注册。
name的m-let对象名称。
异常这个例外应该被MBean服务器并重新抛出一mbeanregistrationexception。
public void postRegister(Boolean registrationDone)
postRegister 接口
MBeanRegistration
registrationDone -是否m-let已成功注册的MBean服务器。价值错误意味着注册阶段已经失败。
public void preDeregister()
throws 异常
preDeregister 接口
MBeanRegistration
异常这个例外应该被MBean服务器并重新抛出一mbeanregistrationexception。
public void postDeregister()
postDeregister 接口
MBeanRegistration
public void writeExternal(ObjectOutput out) throws IOException, UnsupportedOperationException
保存该熔体的内容给出的ObjectOutput。不是所有的实现都支持这种方法。那些不把UnsupportedOperationException。子类可以重写此方法以支持它或更改写入数据的格式。
没有指定写入的数据的格式,但如果实施支持writeExternal(java.io.ObjectOutput)还必须支持readExternal(java.io.ObjectInput)以这样一种方式,由前写的是什么,可以通过后者读。
writeExternal 接口
Externalizable
out --对象输出流写入。
IOException如果写作时发生错误。
UnsupportedOperationException -如果该实现不支持此操作。
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException, UnsupportedOperationException
从给定的ObjectInput恢复该熔体的内容。不是所有的实现都支持这种方法。那些不把UnsupportedOperationException。子类可以重写此方法以支持它或更改读取数据的格式。
没有指定读取数据的格式,但如果实施支持readExternal(java.io.ObjectInput)还必须支持writeExternal(java.io.ObjectOutput)以这样一种方式,后者是可以通过前阅读。
readExternal 接口
Externalizable
in -对象输入流读取。
IOException如果阅读时发生错误。
ClassNotFoundException -如果对象正在恢复无法找到类。
UnsupportedOperationException -如果该实现不支持此操作。
public 类<?> loadClass(String name, ClassLoaderRepository clr) throws ClassNotFoundException
加载一个类,使用给定的ClassLoaderRepository如果类不在熔体的网址找到。给定的classloaderrepository可以为零,在这种情况下,ClassNotFoundException立即发生如果类没有在该熔体的网址找到。
name -类的名字我们要加载。
clr - classloaderrepository将用于寻找给定的类,如果它不在这个类加载器发现。可能是空的。
ClassNotFoundException -指定类不能在这个类加载器也不在了classloaderrepository发现。
protected 类<?> findClass(String name) throws ClassNotFoundException
findClass 方法重写,继承类
URLClassLoader
name -类的名字。
ClassNotFoundException -指定类不能被发现。
protected String findLibrary(String libname)
OSName/OSArch/OSVersion/lib/nativelibname),即
在Solaris SPARC 5.7图书馆统计将在JAR文件作为:
更具体地说,让nativelibname是System.mapLibraryName(libname)结果。那么下面的名称搜索的JAR文件,顺序:
nativelibname
<os.name>/<os.arch>/<os.version>/lib/nativelibname
哪里<X>意味着System.getProperty(X)在结果中删除的任何空间,和/代表文件分隔符(File.separator)。
如果此方法返回null,即图书馆不被任何这类加载器加载的jar文件发现,VM搜索沿着指定的路径为java.library.path属性库。
findLibrary 方法重写,继承类
ClassLoader
libname -图书名称。
System.loadLibrary(String),
System.mapLibraryName(String)
protected URL check(String version, URL codebase, String jarfile, MLetContent mlet) throws 异常
该方法被重写时,将服务支持缓存和版本控制。它被称为从getMBeansFromURL版本时,代码库,及时已经从熔体文件中提取,并可以用来验证它是所有权利负荷给定的MBean,或更换了一个不同的URL。
此方法的默认实现返回codebase不变。
version的
.jar文件版本号存储在本地。
codebase -远程
.jar文件基础URL。
jarfile的
.jar文件的名称被加载。
mlet -代表
MLET标签的
MLetContent实例。
异常如果MBean是不能因为某些原因加载。例外将被添加到集合返回
getMBeansFromURL。
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.