我试图将ArtifactResolver.resolve(ArtifactResolutionRequest)与标志resolveTransitively=true一起使用,我的项目的分离模块需要 10 分钟。
ArtifactResolutionRequest request = new ArtifactResolutionRequest()
.setArtifact( project.getArtifact() )
.setArtifactDependencies( project.getDependencyArtifacts() )
.setLocalRepository( localRepository )
.setManagedVersionMap( project.getManagedVersionMap() )
.setForceUpdate(false)
.setResolveTransitively(true)
.setOffline(true)
.setListeners(listeners);
result = artifactResolver.resolve(request);
如果我只是用 mvn 构建它,它需要大约 4 秒。
maven如何在编译之前解决所有传递依赖以及如何在代码中使用它?
//项目的独立模块大量使用父级,导入依赖,最终有350个依赖工件。那么可能是 maven build 削减了一些处理步骤还是 ArtifactResolver 做了一些额外的事情?