godlikewangjun / dexknife-wj

apk加固插件 带签名校验、dex加密、资源混淆
397 stars 110 forks source link

dexknife-wj-1.1.1.jar这个文件是怎么生成的? #12

Closed brok1n closed 6 years ago

brok1n commented 6 years ago

我需要在服务器加固apk 但是服务器上执行这个jar会报错 ERROR:2018-01-08 10:05:18.(Cmd.java:54): W: /tmp/brut_util_Jar_419122275209942790.tmp: /tmp/../lib64/libc.so.6: version `GLIBC_2.14' not found (required by /tmp/brut_util_Jar_419122275209942790.tmp) 大概意思是我服务器的GLIBC版本比较低 没有GLIBC_2.14 但是服务器是公共服务器 有其他项目也在使用 升级了GLIBC之后其他项目出问题了 所以想请教一下这个 dexknife-wj-1.1.1.jar 怎么生成的 我需要在GLIBC低版本的环境下重新编译这个jar 谢谢

godlikewangjun commented 6 years ago

就是打包成java,c的库是加密dex用的,源代码里面都有。加密dex可自己修改,比较简单的可以自定义加密算法。

brok1n commented 6 years ago

非常感谢。我在dexknife-wj这个module里的build.gradle结尾添加了

jar { String someString = '' configurations.runtime.each {someString = someString + " lib//"+it.name} manifest { attributes 'Main-Class': 'ml.UpdateJiaGu' attributes 'Class-Path': someString } }

task clearPj(type:Delete){ delete 'build','target' }

//copy 运行时依赖 task copyJar(type:Copy){ from configurations.runtime into ('build/libs/lib') }

task release(type: Copy,dependsOn: [build,copyJar]) { // } 然后编译出了可以执行的jar 你的那个jar是直接把所有库都一起打包到一个jar里去了 我这找的方法是把其他库都copy到lib目录下 用的时候需要把lib目录一起copy到使用的地方。

非常感谢