MavenArtifactResolveResult ( @NotNull final ArrayList<MavenArtifactInfo> artifacts, @NotNull final ArrayList<MavenRemoteRepository> remoteRepositories, MavenToken token) { MavenServerUtil.checkToken(token); try { try { MavenExecutionRequest request = createRequest(null, null, null); final Ref<List<MavenArtifact>> mavenArtifacts = Ref.create(); executeWithMavenSession(request, () -> { try { mavenArtifacts.set(this.doResolveTransitivelyWithError(artifacts, remoteRepositories)); } catch (Exception e) { throw new RuntimeException(e); } }); return new MavenArtifactResolveResult(mavenArtifacts.get(), null); } catch (Exception e) { MavenServerGlobals.getLogger().error(e); Artifact transferArtifact = getProblemTransferArtifact(e); String message = getRootMessage(e); MavenProjectProblem problem; if (transferArtifact != null) { MavenArtifact mavenArtifact = Maven3ModelConverter.convertArtifact(transferArtifact, getLocalRepositoryFile()); problem = MavenProjectProblem.createRepositoryProblem("", message, true, mavenArtifact); } else { problem = MavenProjectProblem.createStructureProblem("", message); } return new MavenArtifactResolveResult(Collections.emptyList(), problem); } } catch (Exception e) { throw wrapToSerializableRuntimeException(e); } }