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

Oracle Linux 7构建遇版本兼容错误及ProGuard文件缺失问题求助

问题1:Java版本号不兼容错误解决("Unsupported version number [61.0] (maximum 57.0, Java 13)")
  • 错误本质:61.0是Java 17编译生成的class文件版本号,而当前构建工具(大概率是ProGuard)仅支持到Java 13(对应版本号57.0),无法识别高版本类文件。
  • 可行解决方案:
    • 方案一:统一Java环境版本
      1. 排查环境版本冲突:执行java -version和javac -version,确认编译、运行环境是否混用不同Java版本。
      2. 切换低版本Java:在Oracle Linux 7中用alternatives --config java和alternatives --config javac命令切换系统默认Java版本,确保编译和构建使用同一低版本(≤13)。
      3. 升级ProGuard适配高版本:若项目必须用Java 17,直接升级ProGuard到7.0及以上版本(该版本开始支持Java 17)。
    • 方案二:调整编译参数兼容低版本
      若需保留高版本Java编译,添加--release参数指定目标兼容版本为13,示例命令:
      javac --release 13 src/main/java/**/*.java
      
      生成的class文件会兼容Java 13,避免版本号超出限制。
问题2:更新ProGuard后文件找不到的问题解决
  • 逐一排查以下场景:
    • 场景1:ProGuard命令未加入环境变量
      1. 验证安装状态:执行proguard.sh(或proguard,取决于安装包),若提示"command not found",说明路径未配置。
      2. 添加环境变量:编辑~/.bashrc文件,加入export PATH=$PATH:/你的proguard安装目录/bin,执行source ~/.bashrc使配置生效。
    • 场景2:构建脚本路径配置错误
      检查项目构建脚本:
      • Maven项目:确认proguard-maven-plugin的proguardVersion已更新到新版本,且configuration中的路径指向正确。
      • Gradle项目:检查proguardFiles配置的规则文件路径,若ProGuard安装路径变更,同步更新脚本中的引用。
    • 场景3:ProGuard规则文件丢失
      若提示找不到规则文件(如proguard-rules.pro),确认文件是否被误删或移动,将规则文件放回项目指定目录,并修正脚本中的路径配置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.31 13:45:14