You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

激活FastSwap后Oracle ADF 11g项目部署到集成WebLogic失败

问题

使用JDeveloper 11g R2开发Oracle ADF项目,开启WebLogic服务器的FastSwap功能后无法部署项目,抛出weblogic.management.DeploymentException错误;但默认的servlet reload模式下项目可正常运行。已尝试搜索日志关键词但未找到解决方案,WebLogic报错日志如下:

<4-gen-2023 14.36.31 CET> <Error> <Deployer> <BEA-149265> <Failure occurred in the execution of deployment request with ID '1672839391501' for task '2'. Error is: 'weblogic.management.DeploymentException: '
weblogic.management.DeploymentException: 
    at weblogic.application.internal.BaseDeployment.throwAppException(BaseDeployment.java:79)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:186)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:58)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.NoClassDefFoundError: Could not initialize class com.bea.wls.redef.ClassRedefinerFactory
    at weblogic.application.internal.flow.InitFastSwapLoaderFlow.initLoader(InitFastSwapLoaderFlow.java:70)
    at weblogic.application.internal.flow.InitFastSwapLoaderFlow.prepare(InitFastSwapLoaderFlow.java:46)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:613)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:184)
    Truncated. see log file for complete stacktrace
> 
<4-gen-2023 14.36.31 CET> <Warning> <Deployer> <BEA-149004> <Failures were detected while initiating deploy task for application 'PROJECT'.> 
<4-gen-2023 14.36.31 CET> <Warning> <Deployer> <BEA-149078> <Stack trace for message 149004
weblogic.management.DeploymentException: 
    at weblogic.application.internal.BaseDeployment.throwAppException(BaseDeployment.java:79)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:186)
    at weblogic.application.internal.EarDeployment.prepare(EarDeployment.java:58)
    at weblogic.application.internal.DeploymentStateChecker.prepare(DeploymentStateChecker.java:154)
    at weblogic.deploy.internal.targetserver.AppContainerInvoker.prepare(AppContainerInvoker.java:60)
    Truncated. see log file for complete stacktrace
Caused By: java.lang.NoClassDefFoundError: Could not initialize class com.bea.wls.redef.ClassRedefinerFactory
    at weblogic.application.internal.flow.InitFastSwapLoaderFlow.initLoader(InitFastSwapLoaderFlow.java:70)
    at weblogic.application.internal.flow.InitFastSwapLoaderFlow.prepare(InitFastSwapLoaderFlow.java:46)
    at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:613)
    at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
    at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:184)
    Truncated. see log file for complete stacktrace

排查方向

  • 检查版本兼容性:FastSwap对WebLogic与JDeveloper的版本匹配要求严格,确认WebLogic Server版本是否与JDeveloper 11g R2(对应WebLogic 10.3.6)完全兼容,版本不匹配易引发类加载异常。
  • 验证FastSwap配置:
    • 检查项目中weblogic.xml(Web模块)或weblogic-application.xml(EAR模块)的FastSwap配置,确保<fast-swap>节点格式正确、属性设置无误,无拼写错误。
    • 确认配置里的swap-dir路径存在,且WebLogic服务进程拥有该路径的读写权限,路径避免包含特殊字符或空格。
  • 校验WebLogic类库依赖:
    • 检查WebLogic安装目录下wlserver/server/lib文件夹,确认weblogic.jar、weblogic-redef.jar等FastSwap相关依赖包是否存在,缺失则从对应版本安装包补全。
    • 排查项目第三方jar包,避免引入与WebLogic类库冲突的组件,尤其是涉及类加载、字节码操作的包,这类包会干扰FastSwap的类重定义逻辑。
  • 清理部署缓存:
    • 删除WebLogic服务器临时部署目录(通常为domain_name/servers/server_name/tmp/_WL_user下的项目对应文件夹),同时清理JDeveloper部署缓存(C:\Users\<用户名>\AppData\Roaming\JDeveloper\systemXX.XX.XX.XX\o.j2ee\drs),重启服务器后重新部署。
  • 检查JVM参数:
    • FastSwap需要特定JVM支持,确认WebLogic启动时是否添加了正确参数,比如-javaagent:<WebLogic安装路径>\wlserver\server\lib\weblogic.jar,同时避免使用干扰类重定义的JVM参数。
  • 查看完整报错堆栈:
    • 日志提示堆栈被截断,找到WebLogic完整日志文件(通常在domain_name/servers/server_name/logs/server_name.log),查看com.bea.wls.redef.ClassRedefinerFactory初始化失败的具体原因,比如依赖类缺失、初始化代码抛异常等。

内容的提问来源于stack exchange,提问作者gBrugna

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 19:10:28