我有一个gradle多项目构建设置,其中每个(子)项目都有自己的特定proguard配置文件(* .pro)。在这个多项目构建中,我可以构建一个JavaFX和一个Android应用程序作为目标。我喜欢使用基于收集的依赖项目的proguard文件的配置来混淆它们。
我的问题是在混淆开始之前收集所有必要的proguard文件。以下是我的依赖项的基本可视化:
LibCore(libcore.pro)(普通java项目)
\ - > LibDesktop(libdesktop.pro)(具有依赖关系的java项目) JavaFX的)
\ ---> AppDesktop(appdesktop.pro)
\ - > LibAndroid(libandroid.pro)(android库项目)
\ - > AppAndroid(appandroid.pro)(android应用程序项目)
如果要混淆AppAndroid项目,我需要收集ProGuard文件libcore.pro,libandroid.pro和appandroid.pro。现在,我使用以下android-gradle代码:
proguardFiles getDefaultProguardFile('proguard-android.txt'),
file('.' + '/' + 'appandroid.pro'),
project(':LibAndroid').file('libandroid.pro'),
project(':LibCore').file('libcore.pro'),
因为我的项目有更多的子项目,所以我喜欢根据依赖结构自动执行此操作。
你们中有谁有想法解决这个问题?提前谢谢!