echo Class caching enabled...
set JAVA_OPTIONS=%JAVA_OPTIONS% -Dlaunch.main.class=%SERVER_CLASS%
-Dlaunch.class.path="%CLASSPATH%" -Dclass.load.log.level=finest
-Dclass.load.log.file=C:\class-load-log.txt
-Dlaunch.complete=weblogic.store.internal.LockManagerImpl
-cp %WL_HOME%\server\lib\pcl2.jar
set SERVER_CLASS=com.oracle.classloader.launch.Launcher
weblogic 应用类加载
10.2.1weblogic 服务器的应用类加载概述
weblogic 类加载的重点是应用。一个应用一般是一个 ear 包,可能包含 3 部分:ejb jar,web
应用 war,资源适配器 rar。
如果 ejb jar 和 web war 单独部署,不在 ear 包内,则当作单独的应用。
每个应用有自己独立的类加载器层次结构。这个类加载器层次的上级是 weblogic 的系统类
加载器。
这样就隔离了应用,应用 A 是不能访问应用 B 的类加载器和类的。应用中的代码只能访问
到与当前应用关联的类加载器加载的类或者应用加载器的上级加载器加载的类。
这样 weblogic 可以在同一个 jvm 中持有多个独立的应用。
10.2.2 应用的类加载器层次结构
在部署一个应用时,weblogic 自动创建一个类加载器层次。
这个层次的根加载器加载应用中的 ejb jar 文件。
每个 web war 应用包都有一个独立的子加载器。
通常 web 应用会调用 ejb,weblogic 的应用类加载器的体系结构允许 jsp 和 servlets 访问它们
上级加载器中 ejb 接口。这种体系结构允许在不重新部署 ear 的情况下重新部署 war。
事实上,jsp 和 servlets 会被经常修改,而 ejb 层的修改比较少。