Czy istnieje niezbyt zabawne narzędzie, które może utworzyć wykres wywołań całej aplikacji? Nie chodzi mi tylko o uzyskanie obrazu lub rysowanie wykresu wywołań za pomocą wskazywania metody metodą.Graf wywołania całej aplikacji
Potrzebuję grafu wywołania, który jest dostępny programowo, tzn. Narzędzie powinno wypróżnić go do pliku w trybie tekstowym (np. XML) lub zbudować wykres wywołania w pamięci (co staje się problematyczne w przypadku dużych aplikacji). Wykres wywołania wbudowany w DB byłby świetny.
Zarówno statyczne, jak i dynamiczne wykresy połączeń są pożądane; choć statyczny jest nieco bardziej interesujący, to fakt, że jest on nadmiernie powiększony, jest akceptowalny.
Próbowałem Soot do tej pory. Jednak nie jest w stanie obsłużyć nawet projektów średniej wielkości, takich jak FreeCol (dostępne są źródła java). Sadza wyczerpuje 1,5 GB pamięci w tym projekcie, a następnie JVM ulega awarii, jak opisano tutaj: http://www.sable.mcgill.ca/pipermail/soot-list/2008-July/001828.html
Czy ktoś mógłby zaproponować narzędzie do generowania wykresu połączeń, jak opisano powyżej? Języki Java lub .NET są w porządku.
poważaniem, Sarge
Weź młotek i użyj platformy 64-bitowej i przypisz trochę 6 GB lub cokolwiek do JVM dla Soot ...;) – Lucero
Chcesz grafikę połączeń zbudowaną dla Javy? Dla C? dla ...? Zgaduję, Java, ale twoje odniesienie do C# nazywa to założenie w wątpliwość. –
Lucero, dzięki. BTW, czy JVM jest w stanie obsłużyć więcej niż 2 GB pamięci RAM? W każdym razie, chociaż to rozwiązanie może pozwolić mi stworzyć wykres wywoławczy dla FreeCol, ale dla dużego projektu (np. Alfresco) będzie wymagać 100 GB pamięci RAM itp. To nie jest właściwy sposób. –