`
lizhensan
  • 浏览: 377821 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

maven打包 实现代码混淆

 
阅读更多

<plugin>

<groupId>com.pyx4me</groupId>

<artifactId>proguard-maven-plugin</artifactId>

<executions>

<execution>

<phase>package</phase>

<goals>

<goal>proguard</goal>

</goals>

</execution>

</executions>

<configuration>

<obfuscate>true</obfuscate>

<proguardInclude>${basedir}/--proguard.conf</proguardInclude>

<libs>

<lib>${java.home}/lib/rt.jar</lib>

<lib>${java.home}/lib/jsse.jar</lib>

<lib>${java.home}/lib/jce.jar</lib>

</libs>

</configuration>

</plugin>

 

  
# ----------------------------------
#  通过指定数量的优化能执行
#  -optimizationpasses n
# ----------------------------------
-optimizationpasses 3

# ----------------------------------
#   混淆时不会产生形形色色的类名 
#   -dontusemixedcaseclassnames
# ----------------------------------
-dontusemixedcaseclassnames
# ----------------------------------
#      指定不去忽略非公共的库类
#  -dontskipnonpubliclibraryclasses
# ----------------------------------
#-dontskipnonpubliclibraryclasses

# ----------------------------------
#       不预校验
#    -dontpreverify
# ----------------------------------
# -dontpreverify

# ----------------------------------
#      输出生成信息
#       -verbose
# ----------------------------------
-verbose

#混淆时应用侵入式重载 
-overloadaggressively 
 
#优化时允许访问并修改有修饰符的类和类的成员 
-allowaccessmodification
#确定统一的混淆类的成员名称来增加混淆 
-useuniqueclassmembernames



#这里添加你不需要混淆的类
-keep  class cn.sunline.test.Test {*;}  

-keep public class * extends  javax.servlet.Servlet
 
-keepattributes **
 

#-keepnames class * implements java.io.Serializable
# ---------保护所有实体中的字段名称----------
-keepclassmembers class * implements java.io.Serializable {
    <fields>;
}

# --------- 保护类中的所有方法名 ------------
-keepclassmembers class * {
	public <methods>;
}

 

 

分享到:
评论

相关推荐

    Java+IDEA+maven混淆打包

    1. **配置Maven打包**: 在`pom.xml`文件中,我们需要添加`maven-jar-plugin`插件来打包Java项目。以下是一个基本的配置示例: ```xml &lt;groupId&gt;org.apache.maven.plugins &lt;artifactId&gt;maven-jar-plugin ...

    Java+IDEA+Maven混淆打包

    本教程将详细讲解如何在IntelliJ IDEA(IDEA)中利用Maven进行混淆打包,确保代码的安全性并提高可维护性。 首先,让我们了解一下涉及的工具和技术: 1. **Java**: 一种广泛使用的面向对象的编程语言,用于构建跨...

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

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

    allatori第二代Java代码混淆器Maven打包配置,依赖库,以及配置文件

    allatori第二代Java代码混淆器Maven打包配置,依赖库,以及配置文件。示例运行,可行。

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

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

    maven 代码混淆.zip

    本文将深入探讨`maven`与`代码混淆`的相关知识点,帮助开发者理解如何在Maven项目中实现代码混淆。 首先,我们要知道什么是代码混淆。代码混淆是将源代码中的类名、方法名、变量名等替换为无意义的简短名称,以防止...

    maven打包使用yui压缩css和js文件

    在命令行中,我们可以通过运行 `mvn clean package` 命令来触发Maven生命周期,这将清理旧的构建产物,编译源代码,并最终打包项目。在这个过程中,YUI Compressor会自动对指定的CSS和JS文件进行压缩。 4. **检查...

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

    本案例是一个Spring Boot单个Maven工程,通过ProGuard实现代码混淆的实践示例。首先,我们需要了解ProGuard的基本配置和使用方法。ProGuard的配置文件通常命名为`proguard.cfg`,在该文件中,我们可以定义混淆规则,...

    maven打包过程执行自定义插件包

    自定义插件的目标(goal)可以实现各种功能,例如代码混淆、资源文件处理、特殊日志记录等。在插件的Java代码中,我们可以使用Maven的API来访问项目的元数据,如源码位置、构建目录等,从而进行相应的处理。 总结...

    Android 混淆打包不混淆第三方jar包

    Android混淆打包不混淆第三方jar包Android 混淆打包不混淆第三方jar包

    Spring Boot + Allatori 代码混淆demo

    3. **集成到Spring Boot项目**:将Allatori作为构建工具的一部分,例如在Maven或Gradle的构建脚本中添加插件配置,确保在打包过程中执行混淆操作。 4. **执行混淆**:运行Allatori,指定输入(未混淆的JAR文件)和...

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

    总的来说,使用`proguard-maven-plugin`可以方便地在Maven项目中实现代码混淆,提高代码的安全性。在实际应用中,应根据项目需求调整混淆规则,确保混淆后的代码仍能正确运行。同时,还需要注意混淆可能带来的调试...

    对java jar包实现混淆加密

    一、代码混淆的重要性 代码混淆的主要目的是使原始的Java代码变得难以理解和反编译。这通过改变类、方法和变量的名称,以及重排和优化代码结构来实现。混淆后的代码对于攻击者来说,看起来就像一团乱麻,难以追踪其...

    jar代码混淆器最新版5.3.3

    2. **集成到构建过程**:对于Maven或Gradle项目,可以在构建脚本中配置ProGuard插件,使其在打包时自动执行混淆操作。 3. **运行ProGuard**:执行ProGuard命令,处理输入的JAR或DEX文件,并生成混淆后的输出文件。 ...

    java 代码混淆,网上可以找到的demo

    Java代码混淆是保护Java应用程序源代码安全的一种技术手段,它通过改变代码的可读性来增加逆向工程的难度,防止恶意用户分析和篡改代码。在这个“java 代码混淆,网上可以找到的demo”中,我们可以探讨一些关键概念...

    打包工具-混淆器

    当代码被打包成JAR或APK(Android应用包)时,混淆器会重命名类、方法和变量,使其变得难以阅读和理解,从而增加逆向工程的难度。常见的混淆器有ProGuard和R8,它们是Android开发的官方推荐工具。 ProGuard是一个...

    使用maven将Java程序打包成exe文件并制作成Windows系统服务(六)之使用allatori对Java代码混淆

    运行`mvn clean package`命令,Maven会按照配置顺序执行构建流程:首先编译源代码,然后使用Allatori混淆代码,接着打包成JAR,最后由Launch4j转换为exe文件。 对于Windows系统服务的创建,你可以使用Java Service ...

    obfuscation-maven-plugin:一个用于使用qprotect混淆编译文件的Maven插件

    "obfuscation-maven-plugin"是一个专门用于进行代码混淆的Maven插件,它整合了qprotect工具,为Java开发者提供了方便的混淆编译解决方案。 **Maven插件的作用** Maven是Java项目管理的神器,它通过配置文件pom.xml...

    Apache-Maven-3.3.6

    此外,通过使用如ProGuard这样的插件,还可以进行代码混淆和优化。 10. **报告生成**:Maven可以生成多种项目报告,如Javadoc、测试覆盖率、单元测试报告等,帮助开发者了解项目的状态。 总之,Apache Maven 3.3.6...

    maven windows安装

    **注意**:解压时,请确保目录名称与下载的Maven版本号一致,这样可以避免后续操作中的混淆。 ##### 3. 配置环境变量 接下来需要配置系统的环境变量,以便在任何位置都能运行Maven命令。 - **新建系统变量 MAVEN_...

Global site tag (gtag.js) - Google Analytics