W Gradle wszystko poszło do przodu, więc uważam, że to pytanie zasługuje na inną odpowiedź.
Od wersji 4.3 wprowadzono „ skany kompilacji ”. Wszystkie istotne informacje są dostępne w dokumentach Gradle ( 1 , 2 ). Dla mnie wydaje się to teraz najłatwiejszym sposobem sprawdzenia zależności (i ogólnie kompilacji) w przejrzysty, zorganizowany sposób.
Są bardzo łatwe do utworzenia, wystarczy wykonać:
gradle build --scan
(lub ./gradlew build --scan
jeśli używasz opakowania)
To generuje losowo generowany link, w którym można zobaczyć skan. Otwierając ten link, podajesz swój adres e-mail i zyskujesz pełną kontrolę nad linkiem: np. udostępnij lub usuń. Zawiera wiele informacji o twojej kompilacji , nie tylko zależności. Możesz zobaczyć swoje zależności, ich hierarchie, repozytorium użyte do ich uzyskania, ale także wiele innych rzeczy na temat twojej kompilacji, a mianowicie jej wydajność (która jest interesująca w dużych złożonych kompilacjach), twoje testy, nawet dane wyjściowe konsoli i twoje konfiguracja systemu, w którym zastosowano JDK i JVM, maksymalny rozmiar sterty itp.
To jest ekran z próbnego projektu:
Skan kompilacji to udostępniany zapis kompilacji, który zapewnia wgląd w to, co się wydarzyło i dlaczego. Możesz utworzyć skan kompilacji na scans.gradle.com za darmo.
Należy jednak pamiętać, że informacje dotyczące procesu kompilacji zostaną przesłane do serwerów Gradle. Masz pełną kontrolę, aby usunąć go po zakończeniu inspekcji.
Wreszcie, możesz używać skanów kompilacji z wersjami Gradle wcześniejszymi niż 4.3, po prostu musisz ręcznie dodać wtyczkę skanów do swojego buildscript.
Edycja :
Uwzględnienie niektórych komentarzy z komentarzy i dodatkowych notatek:
1) Bardzo trudno jest to zrobić przez pomyłkę lub bez zrozumienia, że niektóre informacje o twojej kompilacji będą dostępne online (prywatne dla ciebie, z możliwością ich usunięcia, ale nadal online) ).
Podczas wykonywania gradle build --scan
pojawia się następujący komunikat:
Publishing a build scan to scans.gradle.com requires accepting the Gradle
Terms of Service defined at https://gradle.com/terms-of-service. Do you
accept these terms? [yes, no]
Musisz wyraźnie napisać, yes
a następnie wiadomość jest kontynuowana:
Publishing build scan...
https://gradle.com/s/a12en0dasdu
2) W Gradle Enterprise możesz hostować skany kompilacji na własnych serwerach. Nie mam jednak doświadczenia w tym zakresie i moje proponowane podejście dotyczyło standardowej dystrybucji Gradle, wykorzystując serwery Gradle do skanowania kompilacji.
3) Sam Gradle promuje skany kompilacji jako sposób radzenia sobie z większością problemów z kompilacją.