我試圖使用標記為 resolveTransitively = true 的 ArtifactResolver.resolve(ArtifactResolutionRequest),並且需要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構建會削減一些處理步驟還是ArtifactResolver另外做些什麽?