Jeśli skonfigurujesz kod jako zwykły moduł Java w Gradle, to naprawdę łatwo jest poprosić Gradle o przekazanie pliku jar z zawartością. Ten plik jar będzie zawierał tylko twój kod, a nie inne biblioteki Apache, od których zależy. Zalecałbym dystrybucję w ten sposób; trochę dziwne jest pakowanie zależności w twojej bibliotece i bardziej normalne jest, że użytkownicy tych bibliotek muszą włączać te zależności samodzielnie (ponieważ w przeciwnym razie istnieją kolizje tych projektów, które już łączą kopie biblioteki, być może różnych wersji ). Co więcej, unikniesz potencjalnych problemów licencyjnych związanych z redystrybucją kodu innych osób, jeśli będziesz publikować swoją bibliotekę.
Weź kod, który również musi zostać skompilowany, do jar i przenieś go do oddzielnego, zwykłego modułu Java w Android Studio:
- Menu Plik > Nowy moduł ... > Biblioteka Java
- Skonfiguruj bibliotekę, nazwę pakietu Java i nazwy klas w kreatorze. (Jeśli nie chcesz, aby utworzyła dla Ciebie klasę, możesz ją po prostu usunąć po utworzeniu modułu)
- W kodzie Androida skonfiguruj zależność od nowego modułu, aby mógł używać kodu w nowej bibliotece:
- Plik > Struktura projektu > Moduły > (Twój moduł systemu Android) > Zależności > + > Zależność modułu . Zobacz zrzut ekranu poniżej:
- Wybierz moduł z listy w wyświetlonym oknie dialogowym:
Mam nadzieję, że Twój projekt powinien teraz budować się normalnie. Po wykonaniu kompilacji plik jar dla biblioteki Java zostanie umieszczony w katalogu build / libs w katalogu modułu. Jeśli chcesz ręcznie zbudować plik jar, możesz uruchomić jego zadanie budowania pliku jar z okna Gradle: