org.osgi.framework.BundleException-glassfish

    当把glassfish文件夹从一台机子复制到另一台机子时,glassfish不能在目标机子上运行,会报org.osgi.framework.BundleException错误。
    原因:因为glassfish3\glassfish\domains\domain1\osgi-cache中有osgi缓存,它会记录一些包所在的绝对路径,导致一些包找不到。
    解决:删除此文件夹即可(即osgi-cache文件夹)。再次运行服务的时候,osgi-cache此文件夹会再次生成。

@echo off
echo 正在删除%~dp0glassfish3\glassfish\domains\domain1\osgi-cache
echo 正在删除osgi缓存......
rem 功能:删除domain1下的osgi-cache文件夹
rem 解决从一台机子复制到另一台机子,不能运行的问题;
rem 问题:org.osgi.framework.BundleException
rem 问题原因:因为有osgi缓存,导致在别的机子不能运行,删除此缓存即可。
rd /s/q %~dp0glassfish3\glassfish\domains\domain1\osgi-cache
echo 删除osgi缓存成功
rem 暂停1000ms,为了显示一些信息,增加友好性
ping /n 1 /w 1000 1.0.0.1>nul

你可能感兴趣的:(cache,osgi,Glassfish)