Я пытаюсь создать отдельный проект, который может найти зависимости от maven любого проекта. Я ссылался на образцы Aether, но я не мог найти способ определить другой проект для поиска зависимостей.Как найти зависимости от maven любого проекта?
Как показано на следующем рисунке 1, проект 1 имеет зависимости от проекта 2, а проект 2 имеет зависимости от проекта 3. Если я выбираю проект 1 в поиске зависимостей, он должен отображать все зависимости проекта 1, которые являются проектом 2.
Я имел в виду следующее Aether кусок кода, но я не мог понять, как установить другой проект (путем установки POM файла или каталога проекта)
RepositorySystem system = Booter.newRepositorySystem();
RepositorySystemSession session = Booter.newRepositorySystemSession(system);
Artifact artifact = new DefaultArtifact("org.eclipse.aether:aether-impl:1.0.0.v20140518");
ArtifactDescriptorRequest descriptorRequest = new ArtifactDescriptorRequest();
descriptorRequest.setArtifact(artifact);
descriptorRequest.setRepositories(Booter.newRepositories(system, session));
ArtifactDescriptorResult descriptorResult = system.readArtifactDescriptor(session, descriptorRequest);
for (Dependency dependency : descriptorResult.getDependencies())
{
System.out.println(dependency);
}
МВН зависимость: дерево, как правило, работает для меня. – Ryan
Он пытается построить проект maven, загружая зависимости, которые могут оказаться неудачными. Я просто хотел узнать список зависимостей в соответствии с структурой POM без построения. –
'mvn dependency: tree' не создает проект, а просто пытается загрузить файлы POM для всех зависимостей, которые еще не существуют в локальном репозитории. Если вы загружаете «проект A» где-то, что в свою очередь зависит от «проекта B» и «проекта C» (оба из которых находятся в удаленном репозитории), Maven может определить полное дерево зависимостей для «проекта A» только после загрузки POM для «проекта B» и «проекта C». Это является причиной загрузки POM. – manish