Weblogic是一个强大的企业级J2EE WEB应用中间件,使用相当广泛。 今天部署项目到WebLogic,发现代码总不能生效,查了好久都查不出原因,最后想到可能是缓存文件的原因,可是这缓存文件到底在哪里呢? 在Tomcat中,我们知道%catalina_home%/work是存放缓存文件的地方,发现上述情况,可以通过删除这里面的文件,让它重新编译,以便代码生效。 可是在RedHat下,WebLogic的缓存文件竟然存放在哪里呢?找了半天没有找到,最后在你Server下面的一个以.开头的一个隐藏文件,具体的路径大概如下:bea/user_projects/domains/mydomain/myserver/.wlnotdelete/extract/myserver_ride_WebContent
也就是在你的server(可以通过控制台看到)下面的.wlnotdelete中,删除掉extract下面和你的项目名称相似的文件夹就可以!!!
转自: http://jinyan798.iteye.com/blog/793083
今天一上午就为了这个问题搞了一个上午,郁闷死了。
以前我每次把WAR包放上,并清理/bea/user_projects/domains/internal_domain/servers/AdminServer/tmp/_WL_user目录下的项目,然后再启动WebLogic,每次我这样做都是还是以前发布的版本,新���新上的东西都没有显示出来。我让我同事在她机子上发布一下就OK了,新增加的东西都有了。
可今天呢,在她机子上也不管用了。感觉超级奇怪,重传了WAR包,重启了好几次WebLogic都不起作用。最后我同事把上传的WAR包删除了,然后重新启动,它竟然还能发布成功。说明我们之前清除缓存做的不对。网上查看了一下,有的说清/bea/user_projects/domains/internal_domain/servers/AdminServer/tmp/_WL_user目录就行了,而有的说要清/bea/user_projects/domains/internal_domain/servers/AdminServer/stage这个目录下的。我们就把这个目录下的项目清了一下。结果就OK了。
原来我们一直都清错地方了。最好两个目录都清一下。
集群中AdminServer可能是主管服务器就没有stage与tmp这两个文件夹,代理服务器与受管理的服务器都会有的。手动清除缓存是到受管服务器中找到tmp\_WL_user,删除掉相应缓存即可。