The docs wspomina, że implementation
zapewnia znaczną poprawę czasu budowy w stosunku do compile
/api
. A co z compileOnly
?Implementacja systemu Android Gradle vs CompileOnly
Mój przypadek użycia to wielomodułowy (przepraszam, nie podoba mi się terminologia wielo-projektowa Gradle), w którym mam aplikację na Androida i wiele bibliotek, od których zależy aplikacja (implementation
). Niektóre biblioteki również zależą od siebie nawzajem. Czy powinienem używać implementation
lub compileOnly
podczas deklarowania zależności w modułach bibliotecznych? Mój moduł aplikacji będzie używać implementation
, aby polegać na tych artefaktach, więc nie potrzebuję przechodzić przez moduły biblioteczne.
'compileOnly' oznacza, że te zależności byłyby dostępne chociaż skompilować tylko raz, a nie ** ** dostępne podczas wykonywania. Jeśli moduł nie potrzebuje tych zależności w środowisku wykonawczym, nie widzę problemów z deklarowaniem "kompilacji". – azizbekian
Nie dotyczy to pytania dotyczącego wydajności. – Eliezer