Как исключить файл .jar из файла .aar - PullRequest
0 голосов
/ 10 января 2019

Есть ли способ исключить файл .jar из файла .aar. Мой проект не работает, так как у меня есть один модуль, который содержит файл .aar, в котором Gson.jar используется в качестве библиотеки, и он мне также нужен в моем основном приложении, поэтому мне также нужно реализовать зависимость от Gson. Когда я попытался запустить свой проект, я получил ошибку мультидекса:

Не удалось выполнить задачу ': app: transformClassesWithBundleMultiDexListForDevelopmentBuildDebug'.

com.android.build.api.transform.TransformException: ошибка при генерации основного списка dex.

Пожалуйста, помогите мне решить эту проблему. Спасибо

Ответы [ 2 ]

0 голосов
/ 10 января 2019

Наконец, после долгих поисков, я нашел решение.

Решение, которое сработало для меня:

$ unzip myLib.aar -d tempFolder # or other extracting tool
# Change whatever you need
$ jar cvf myNewLib.aar -C tempFolder/ .

Ссылка: Изменение содержимого файла Android .aar / Преобразование в формат .zip и из него

0 голосов
/ 10 января 2019

Вы можете иметь исключение в целях просто так

 sourceSets.main {
        manifest.srcFile 'AndroidManifest.xml'
        java.srcDirs = ['src']
        resources.srcDirs = ['src']
        aidl.srcDirs = ['src']
        renderscript.srcDirs = ['src']
        res.srcDirs = ['res']
        assets.srcDirs = ['assets']
        java {
            exclude '**/VanillaARMv*'
            exclude '**/VanillaX86*'
        }
        resources {
            exclude '**/VanillaARMv*'
            exclude '**/VanillaX86*'
        }
        aidl {
            exclude '**/VanillaARMv*'
            exclude '**/VanillaX86*'
        }
        renderscript {
            exclude '**/VanillaARMv*'
            exclude '**/VanillaX86*'
        }

    }

Здесь я исключаю все, что у меня есть в папках VanillaARMv * и VanillaX86 * из целевой сборки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...