Я создаю модуль оценки проекта, в котором при наличии URL-адреса хранилища GIT я буду клонировать проект и оценивать его. Одна из точек оценки - это зависимости, объявленные в файле build.gradle
. Мне нужен способ для синтаксического анализа файла и извлечения объявленных зависимостей и неиспользуемых зависимостей.
Объявленные зависимости
Чтобы получить заявленные зависимости, я попытался использовать библиотеки, предлагаемые Gradle на https://mvnrepository.com/artifact/org.gradle, следующим образом:
Project build = ProjectBuilder.builder().withProjectDir(new File(projectDir)).build();
DependencyHandler dependencies = build.getDependencies();
Но приведенный выше фрагмент кода породил множество ClassDefNotFound
исключений. Каждый раз, когда я импортировал правильную зависимость, он просто выдавал исключение ClassDefNotFound
для чего-то другого. Мой проект - проект Maven, и мне интересно, если это проблема
Неиспользуемые зависимости
Я нашел, чтобы получить неиспользуемые зависимости, используя плагин на https://github.com/wfhartford/gradle-dependency-analyze, но это будет означать, что мне придется редактировать build.gradle
проекта, который я анализирую, и я не нахожу желательным
Я немного новичка ie, когда дело доходит до Gradle, поэтому ценим любую помощь Спасибо