当前位置: 首页 > 知识库问答 >
问题:

yguard:混淆java类不受支持的类文件主版本61时出错

羊舌旭尧
2023-03-14

我正在将我的项目从jdk1.8切换到openjdk 17。代码工作正常,ANT可以生成可执行jar。使用Eclipse IDE。

尝试使用yGuard 3.0.0(通过ant)进行混淆时出现问题。任务是:

<target depends="create_javafx_jar" name="ofuscaJars2">     
        
      <taskdef name="yguard" classname="com.yworks.yguard.YGuardTask" classpath="${yguard}"/>
        
      <echo level="info" message="OFUSCANDO JAR v2..." />       
        
        <if>
          <available file="${dir.jarfile}/assistcontrol.jar" type="file" />
          <then>            
          </then>
          <else>
            <fail message="Fichero ${dir.jarfile}/assistcontrol.jar no existe" />
          </else>
        </if>
                
         <yguard>           
            <inoutpair in="${dir.jarfile}/assistcontrol.jar"  out="${dir.obfuscatejar}/assistcontrol.jar" />
            
            <shrink logfile="${shrinklog}">
                <keep>
                    <!-- main method -->
                    <method name="void main(java.lang.String[])" class="core.MainClass" />
                </keep>
            </shrink>
            
            <externalclasses description="JARs que son invocados por AssistControl, deben tenerse en cuenta en la ofuscación">
                <fileset dir="${dir.jarfile}/jars">
                    <include name="**/*.jar"/>
                </fileset>          
            </externalclasses>
            
            <rename mainclass="core.MainClass" logfile="${dir.obfuscatejar}/renaming.xml" replaceClassNameStrings="true">          
                  <property name="error-checking" value="pedantic"/>
            </rename>
          </yguard>
    </target>

输出为:

[收缩]错误:不支持的类文件主要版本61[收缩]不支持的类文件主要版本61

我知道61意味着java 17,所以我尝试将工作区符合性更改为“编译器符合性级别”-

共有2个答案

仉运乾
2023-03-14

截至今天,最新的3.1.0版本声称支持JDK 17。

湛玄裳
2023-03-14

在github中询问,实际的yGuard版本(3.0.0)不支持java 17。现在切换到openjdk 11。

 类似资料:
  • 我正在尝试运行一个颤振应用程序,在尝试时出现了这个错误,我所做的是我想在没有android studio的情况下运行颤振应用程序,所以我下载了android SDK和JDK 17,在我运行颤振医生后,它告诉我一切都很好,我尝试运行,它给了我这个错误: 所以我尝试了一个旧版本的JDK,它给了我另一个错误,所以我看到了使用JDK 17运行的第三个解决方案,那就是降级gradle中的gradle。属性,

  • 我将我的Android Studio项目从一台计算机移动到另一台计算机,现在我发现错误: “不支持的类文件主版本61”。 我该怎么解决这个问题?

  • 嗨,我在构建我的gradle项目时遇到了这个错误,尝试了在这里在线找到的所有内容如何修复IntelliJ IDEA中的“不支持的类文件主要版本60”? 我通过从计算机中删除java 17解决了这个问题。。但是不想删除java 17版本,仍然想编译我的代码

  • 运行时遇到错误,我尝试了Pyspark error-Unsupported class file major version 55和Pyspark.topandas():'Unsupported class file major version 55'中提到的解决方案,但没有成功。 完整错误日志:

  • 我试图开发一个带有数据库的应用程序,但我遇到了很多错误,比如java。lang.IllegalArgumentException:不支持的类文件主版本61和[EL Severe]:元数据:2022-01-26 17:43:20.982--服务器会话(422250493)--数据库。模型StageEntity类是用不受支持的JDK编译的。向EclipseLink开源项目报告此错误。对于通过映射创建的

  • 我正在尝试为我的Flatter应用程序设置firebase,当我尝试运行此命令时:我有这个错误,构建失败。 > 其中:构建文件“C:\Users\anvay\Flatter\u project\bookbasket\android\Build”。格拉德尔' 出错的地方:无法编译构建文件'C:\User\anvay\flutter_project\book篓\android\build.gradle