`
gao2008ss
  • 浏览: 9779 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

解决Proguard5.3版本不支持含有JDK9代码的Jar包混淆问题

 
阅读更多

项目引入了日志包log4j-api-2.10.0.jar,log4j从2.9版本开始支持JDK9,当前项目使用混淆器proguard5.3.3对代码进行混淆,proguard5.3.3只对JDK支持到1.8,混淆时会报错

 

 

Can't read [D:\proguardConfig\lib\log4j-api-2.10.0.jar] (Can't process class [META-INF/versions/9/org/apache/logging/log4j/util/ProcessIdUtil.class] (Unsupported class version number [53.0] (maximum 52.0, Java 1.8)))

 

 

要解决报错需屏蔽log4j中使用java9 api的类。在proguard的配置文件中log4j-api-2.10.0.jar后面加入(!META-INF/versions/9/**.class,!module-info.class)

 

 

配置文件示例

 

-libraryjars lib\log4j-api-2.10.0.jar(!META-INF/versions/9/**.class,!module-info.class)
-libraryjars lib\log4j-core-2.10.0.jar
-libraryjars lib\log4j-jcl-2.10.0.jar
-libraryjars lib\log4j-web-2.10.0.jar

 

0
0
分享到:
评论

相关推荐

    proguard支持JDK 1.8

    标题中的"proguard支持JDK 1.8"意味着ProGuard已经能够处理使用JDK 1.8语法编写的Java代码。 **1. ProGuard的核心功能** - **混淆**:ProGuard通过将类名、方法名和变量名转换为简短的、随机的名称,使得逆向工程...

    proguard-7.4.0,适合JDK21及以下,官网正版

    ProGuard 7.4.0版本: 这个ZIP文件包含了ProGuard版本7.4.0的所有必要文件和配置。 下载和使用方法: 下载ZIP文件: 点击下载按钮获取proguard-7.4.0.zip文件。确保你选择了适合你操作系统的版本。 解压文件: ...

    proguard v5.3 (支持java 8)

    在获取了`proguard5.3beta3`压缩包后,你需要解压文件,并将`lib`目录下的所有`.jar`文件复制到Android SDK的`tools/proguard/lib`路径下。这样,Android开发环境就能使用更新的ProGuard版本进行混淆和优化。 ### ...

    proguard工具jar包混淆

    proguard最新版jar包混淆工具,能使部署的jar包不让对方破解

    Java Jar包混淆器proguard.v3.8

    Java的Jar包混淆器ProGuard v3.8是一款强大的代码优化和保护工具,主要用于Java和Android应用程序。在软件开发过程中,源代码的安全性和保密性至关重要,而ProGuard提供了一种有效的解决方案,它能够对编译后的字节...

    android proguard5.3.3混淆包

    android proguard5.3.3混淆包 替换Jar包以后使 混淆的类名方法名变成空白 使用方法 直接 替换 5.3.3版本的 混淆jar包 Mac 路径为 Contents/gradle/m2repository/net/sf/proguard/proguard-base Win gradle/m2...

    通过proguard5.2.1代码混淆工具和简单说明

    本实例使用的是把web项目中的源码(src)所有文件打包成jar文件,使用proguard混淆后再把jar文件以及jar解压后的混淆class类文件替换原war项目的相应位置即可。 混淆过程中需要使用keep参数来保持原有一些属性、注解...

    对java jar包实现混淆加密

    总结,Java jar包的混淆加密是提升代码安全的重要手段,通过ProGuard等混淆工具和加密技术,可以有效降低源代码被逆向工程分析的风险。然而,安全是一个持续的过程,开发者应始终保持警惕,及时更新和优化保护策略。

    使用Maven控件proguard-maven-plugin给可执行jar文件混淆

    为了解决这个问题,我们需要在ProGuard配置中指定如何处理依赖项。例如,可以使用`-libraryjars`选项来指定库JAR,确保它们不会被混淆。 总的来说,使用`proguard-maven-plugin`可以方便地在Maven项目中实现代码...

    ProGuard工具包,Java代码混淆

    **ProGuard工具包详解——Java代码混淆** 在Java开发中,为了提高应用程序的安全性和保护知识产权,开发者常常会使用一种称为“代码混淆”的技术。ProGuard是Android和Java平台上的一个强大的开源工具,它能实现...

    实现maven管理的Javaweb项目的proguard代码混淆功能

    本文将深入探讨如何在Maven管理的Java Web项目中集成ProGuard工具来实现代码混淆功能,以及在过程中可能遇到的问题及解决方案。 首先,让我们了解什么是ProGuard。ProGuard是一个开源的Java字节码混淆器、优化器和...

    android jar包混淆

    Android JAR 包混淆是一种保护 Java 代码的方式,它可以将 JAR 包中的代码混淆,使得攻击者无法轻易地反编译和盗用代码。混淆过程中,需要使用 ProGuard 工具,该工具可以将 JAR 包中的代码混淆,使得代码变得难以...

    最新java jar包混淆工具

    "最新Java JAR包混淆工具"提及的ProGuard正是一种广泛使用的解决方案,它能够对Java字节码进行混淆、优化和压缩,以防止未经授权的反编译和逆向工程。 **ProGuard** 是一个免费的Java类文件混淆器、优化器和 ...

    springboot工程(单个maven工程)利用proguard实现代码混淆

    总的来说,ProGuard是Spring Boot项目中实现代码混淆的一个有效工具,它可以帮助提高应用的安全性,但也需要谨慎配置以确保功能不受影响。在实际操作中,不断测试和调整混淆规则是达到理想效果的关键。

    SpringBoot + proguard+maven多模块实现代码混淆

    使用 proguard 混淆代码只能增加阅读和理解的难度, 并不能百分百保证代码安全。常用的应用场景是项目需要部署到客户机器上,一定程度上防止代码泄露。 springboot多maven工程结构:proguard-root 是顶级父工程,...

    Android 4.0及以上版本 ProGuard 代码混淆

    当项目中引入了第三方库时,简单的配置往往不足以解决问题,可能会出现诸如“proguard.ParseException: Expecting separator ';' before '}'”之类的错误。 1. **查找并修改 `proguard-project.txt` 文件**: - 在...

    java 代码混淆 proguard

    ProGuard的配置文件(通常是`proguard.cfg`或`proguard-project.txt`)允许开发者指定保留哪些类、方法和字段不被混淆,这对于保持应用程序的可维护性和避免混淆引发的问题至关重要。例如,保留关键的库接口、公共...

    图形化界面proguard5.3.3,java,jar包混淆工具 2017最新版

    5. **体积压缩**:混淆后的代码通常会变得更小,因为不必要的代码已被删除,ProGuard会进一步压缩代码,减少jar包的大小。 6. **最后处理**:ProGuard会生成映射文件,记录原始名称和混淆后的名称对应关系,以便于...

    实现对jar包的混淆加密

    在Java开发中,为了保护应用程序的源代码不被轻易反编译和理解,开发者通常会进行代码混淆和加密处理。本文将深入探讨如何实现对jar包的混淆加密,以提高程序的安全性。 首先,我们需要了解混淆(Obfuscation)的...

    proguard混淆打包工具

    proguard混淆打包工具proguard混淆打包工具proguard混淆打包工具

Global site tag (gtag.js) - Google Analytics