У меня есть приложение с несколькими вариантами, где я использую dexguard, и я решил настроить его на Jenkins.Лицензии Dexguard находятся в / app / flavor / для лицензии eash, но Jenkins всегда берет лицензию из последней версии.Сборка завершается ошибкой с кодом ошибки:
Имя пакета из файла AndroidManifest.xml [com.example.android.flavor1.something] не соответствует имени пакета [com.example.android.flavor6.something, com.example.android.flavor6.test, com.example.android.flavor6.something.prod, com.example.android.flavor6.test] из вашей лицензии DexGuard [C: \ Users \ CurrentUser \ AndroidStudioProjects\ MyApp \ flav6 \ dexguard-license.txt]
Я попытался переименовать dexguard.license в dexguard-licenseX.txt (где X - номер флейвора) и установить в ароматах build.gradle дляищите это имя, которое даже не могло найти файл лицензии.Я также попытался настроить расположение лицензии в gradle.properties с помощью systemProp.dexguard.licence=./flavor1
.
. В настоящее время я использую
release {
System.properties['dexguard.license'] = buildscript.sourceFile.parent
proguardFiles getDefaultDexGuardFile('dexguard-release.pro'), 'dexguard-rules.pro', 'proguard-rules.pro'
}
И это работает, только если я пытаюсь создать последний вариантв противном случае я должен скопировать dexguard-license в домашнюю папку (что не является проблемой локально, но это проблема для Jenkins).
Есть ли способ настроить dexguard на jenkins?