我正在使用Intellij IDEA开发Java桌面应用程序。我想使用proguard混淆我的源代码。如何在Intellij IDEA 2016.1.14上集成/使用proguard?
我还没有尝试过(我想先找到简单的方法),但是,如果您按照以下步骤操作,它应该可以工作。我将尝试此方法并进行报告。
转到此链接,了解如何创建Ant build file for IntelliJ IDEA
转到此处下载yGuard
解压缩yGuard存档并导航到doc
目录。
有一个html“如何”文件。继续阅读,您应该准备发布缩小的代码。
可选:在网上搜索yGuard提示和技巧,以充分利用自己的构建。
---工作提示---
[1.0]在IntelliJ 2017中,有一个选项可以在生成菜单上生成Ant生成文件。 Build->Generate Ant Build File
对我有用的设置是单一生成文件,使用提供的项目名称检查了所有其他内容。
[[1.1] View->Tool Windows->Ant Build
,这应该带您从该答案的步骤5th step和步骤1
的链接的4
获得的知识中所需的位置。
这是我正在执行的yGuard任务:
<target depends="artifact.project" name="yguard">
<taskdef name="yguard"
classname="com.yworks.yguard.YGuardTask"
classpath="yguard.jar"/>
<yguard>
<inoutpair in="${temp.jar.path.project.jar}"
out="${artifact.output.project}/project-release.jar"/>
<shrink
logfile="shrinklog.xml">
<keep>
<class classes="protected"
methods="protected"
fields="protected"/>
</keep>
</shrink>
</yguard>
然后您将“全部”修改为如下所示:
<target name="all" depends="build.modules, build.all.artifacts, yguard"
description="build all">
<!-- Delete temporary files -->
<delete dir="${artifacts.temp.dir}"/>
</target>
并且您必须从delete temporary files
目标中删除build.all.artifacts
操作,因此当您到达all
目标时,文件仍然可用。
就像在底部的yGuard html doc
中说的那样,IntelliJ会抱怨您的yGuard语法,但是yGuard仍然可以使用。
[如果有人可以清理,请放心。它对我有用,您的里程可能会有所不同。同样,在添加了Project Structure->Artifacts->Post Processing
中所述的“微小”蚂蚁构建之后,您将能够创建一个非常小的蚂蚁构建xml,并使用WORKING-NOTES: [1.1] "5th step"
。为此肯定需要进行一些手工操作。