osgiCfgInit 脚本
Equinox OSGi 框架用于管理类装入以及服务器组件束之间的关系。 在某些情况下,高速缓存的束数据(按照概要文件来维护并且在安装范围过程的 WAS_HOME 级别具有单独高速缓存)可能与服务器上的实际二进制文件不同步。 可以使用 osgiCfgInit 脚本来清除和重新创建 OSGi 高速缓存。
应在命令行中,从 WAS_HOME/bin 或 user_install_root/bin 目录中运行 osgiCfgInit 脚本。 脚本的行为取决于您运行脚本的目录。 如果从概要文件级别 bin 目录中运行脚本,那么脚本将清除此概要文件中所有服务器的 OSGi 高速缓存。 如果从 WAS_HOME/bin 目录中运行脚本,那么脚本将清除缺省概要文件中所有服务器的 OSGi 高速缓存。
避免麻烦: 在运行 osgiCfgInit 脚本之前,请停止将运行该脚本的服务器。 如果在处于活动状态的服务器上运行此脚本,那么服务器可能在脚本完成后尝试读取或更新高速缓存时遇到问题。
语法
此脚本的语法如下所示: ![[Linux]](../images/nglinux.svg)
![[AIX]](../images/ngaix.svg)
![[z/OS]](../images/ngzos.svg)
![[HP-UX]](../images/nghpux.svg)
![[IBM i]](../images/ngibmi.svg)
![[Solaris]](../images/ngsolaris.svg)
![[Windows]](../images/ngwin.svg)
osgiCfgInit.sh [options]osgiCfgInit.bat [options]选项
下列选项可用于 osgiCfgInit 脚本:
- -all
- 脚本将清除安装中所有服务器的高速缓存以及 WAS_HOME 高速缓存。
- -washome
- 脚本将清除 WAS_HOME 级别的高速缓存。
- -profile profileName
- 脚本将清除指定概要文件的高速缓存。
- -profileConfig profileName
- 脚本将清除指定概要文件的概要文件级别高速缓存。
- -servers serverName1 serverName2 ...
- 脚本将清除指定服务器的高速缓存。
使用方案
要清除高速缓存,请执行如下命令:
./osgiCfgInit.sh [-all|-washome]osgiCfgInit.bat [-all|-washome]如果脚本成功完成,那么将显示 "已成功清除 location的 OSGi 高速缓存" 消息。 显示在命令行上。