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

JRuby 9.4.0.0与Weblogic 12.2.1.4部署兼容性问题求助

JRuby 9.4.0.0 WAR包部署Weblogic 12.2.1.4报错排查

报错信息

resetting rack response due exception: org.jruby.rack.RackInitializationException: No such file or directory - C:/logs/oracle/wls/app/app.log from org/jruby/RubyIO.java:1255:in 'sysopen' from org/jruby/RubyFile.java:362:in 'initialize' from org/jruby/RubyClass.java:931:in 'new' from org/jruby/RubyIO.java:1174:in 'open' from...

环境背景

  • 该WAR包在JRuby 1.7.4 + Weblogic 12.1.3环境可正常运行,切换到JRuby 9.4.0.0 + Weblogic 12.2.1.4后报错
  • Gemfile配置:
ruby '3.1.0'

#hardcoded version for Weblogic joda-time bug
gem 'jruby-jars', '1.7.4'
  • WEB-INF/lib包含的JAR:
    • jruby-complete-9.4.0.0.jar
    • jruby-rack-1.1.22.jar
    • kryptcore.jar
    • kryptproviderjdk.jar
    • ojdbc6.jar
  • 移除的原环境JAR(因bouncycastle问题):
    • jruby-rack-1.1.14
    • jruby-core-1.7.4
    • bcprov-jdk15on-1.47
    • bcpkix-jdk15on-1.47
    • jopenssl
  • 新增了jruby-complete-9.4.0.0.jar(预期包含jruby-core和jopenssl)

问题疑问

是否为JAR包兼容性问题?

解答

  1. 先排查文件路径基础问题:
    检查Weblogic服务器上C:/logs/oracle/wls/app/目录是否存在,以及运行Weblogic的用户是否拥有该目录的读写权限。JRuby 9.x对文件路径的处理比1.7.x更严格,即使逻辑和旧版本一致,也可能因权限或目录缺失触发报错。

  2. 修复Gemfile版本冲突:
    Gemfile指定了jruby-jars:1.7.4,但实际运行用的是JRuby 9.4.0.0,版本不匹配会引发兼容性问题。JRuby 9.x对应Ruby 2.5+语法,你指定的ruby '3.1.0'需要JRuby 9.3+支持,建议将jruby-jars版本升级到与JRuby 9.4.0.0匹配的版本(如9.4.0.0)。

  3. 适配JRuby-Rack与Weblogic版本:
    jruby-rack-1.1.22虽支持JRuby 9.x,但Weblogic 12.2.1.4的Servlet容器环境和12.1.3存在差异。建议尝试升级jruby-rack到最新兼容版本(如1.2.19),同时检查WEB-INF/web.xml中的rack servlet配置是否适配新版本。

  4. 调整Weblogic类加载优先级:
    Weblogic 12.2.1.4可能自带与JRuby冲突的类(如bouncycastle相关),即使移除项目中的对应JAR,服务器自身类库仍可能干扰。可在WEB-INF/weblogic.xml中配置<prefer-web-inf-classes>true</prefer-web-inf-classes>,强制优先加载项目WEB-INF/lib中的类,避免与服务器自带类冲突。

  5. 验证JRuby Complete包完整性:
    确认jruby-complete-9.4.0.0.jar确实包含jopenssl和jruby-core的完整内容,若下载的包损坏或不完整,建议从官方渠道重新下载替换。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 02:40:24