WebLogic 10中的临时目录

每当WL停止时,它都不会删除它的临时目录..即

domains/mydomain/servers/myserver/tmp/_WL_TEMP_APP_DOWNLOADS

/domains/mydomain/servers/myserver/tmp/_WL_user/ /domains/mydomain/servers/myserver/stage

因此,当我们部署新的应用程序时,它不会部署一些JSP或某些类,而是保留这些文件的旧版本。 导致许多业务错误+运行时错误。

这是一个已知的问题吗? 我们如何解决这个问题?

通常,WL将缓存您的部署,除非被要求,否则不会重新部署。 但这取决于您部署应用程序的方式以及服务器是否处于生产或开发模式。 请参阅开发部署和生产部署 。

一个简单的解决方法,转到/ domains / mydomain / servers / myserver /目录并删除:

  • TMP
  • 高速缓存
  • 日志

并保留数据安全目录。 然后重启。 这将迫使WL重新部署。

我的原始答案包括删除数据目录,但正如@ g-demecki和@ j23指出的那样,这可能会破坏管理服务器。 我相信删除托管服务器上的数据目录是可以的。

我从未在生产模式中遇到过这样的问题,如果您在开发模式下运行并使用自动部署,请遵循记录的最佳实践

您希望在任何时候触发重新部署自动部署的应用程序时,必须触摸REDEPLOY文件(更改其时间戳)。 即使在服务器关闭时修改应用程序,也必须触摸REDEPLOY以确保在服务器下次启动时应用更改。

重新部署应该更新tmp – 也许你的时间戳不正常? 停止和启动不会刷新tmp,因为它在重启后仍然使用。

根据我的经验,当服务器关闭以强制解压WAR时,删除tmp就足够了(这是由Weblogic解压缩到tmp的问题,这是部署期间完成的主要任务)。 例如在你的情况下

 /domains/mydomain/servers/myserver/tmp/ 

就我而言,Linux机器的简单重启解决了这个问题。