You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@skywalking.apache.org by ke...@apache.org on 2023/02/21 01:35:59 UTC

[skywalking-eyes] 01/01: dep/maven: resolve dependencies before analysis

This is an automated email from the ASF dual-hosted git repository.

kezhenxu94 pushed a commit to branch deps/maven/deps
in repository https://gitbox.apache.org/repos/asf/skywalking-eyes.git

commit 57a25cb652e498ac452b450c9fa3b4023af54d7e
Author: kezhenxu94 <ke...@apache.org>
AuthorDate: Tue Feb 21 09:35:44 2023 +0800

    dep/maven: resolve dependencies before analysis
---
 pkg/deps/maven.go | 30 +++++++++++++++---------------
 1 file changed, 15 insertions(+), 15 deletions(-)

diff --git a/pkg/deps/maven.go b/pkg/deps/maven.go
index 3c1a506..4c223f1 100644
--- a/pkg/deps/maven.go
+++ b/pkg/deps/maven.go
@@ -57,17 +57,13 @@ func (resolver *MavenPomResolver) Resolve(mavenPomFile string, config *ConfigDep
 		return err
 	}
 
+	// Attempt to resolve dependencies before loading them
+	if err := resolver.ResolveDeps(); err != nil {
+		return fmt.Errorf("dependencies download error")
+	}
 	deps, err := resolver.LoadDependencies(config)
 	if err != nil {
-		// attempt to download dependencies
-		if err = resolver.DownloadDeps(); err != nil {
-			return fmt.Errorf("dependencies download error")
-		}
-		// load again
-		deps, err = resolver.LoadDependencies(config)
-		if err != nil {
-			return err
-		}
+		return err
 	}
 
 	return resolver.ResolveDependencies(deps, config, report)
@@ -107,20 +103,24 @@ func (resolver *MavenPomResolver) FindLocalRepository() error {
 	return nil
 }
 
-func (resolver *MavenPomResolver) DownloadDeps() error {
+func (resolver *MavenPomResolver) ResolveDeps() error {
 	cmd := exec.Command(resolver.maven, "dependency:resolve") // #nosec G204
-	cmd.Stdout = os.Stdout
+	cmd.Stdout = io.Discard
 	cmd.Stderr = os.Stderr
 
-	err := cmd.Run()
-	if err == nil {
+	logger.Log.Debugf("resolving dependencies with command %v", cmd.Args)
+
+	if err := cmd.Run(); err == nil {
 		return nil
 	}
-	// the failure may be caused by the lack of sub modules, try to install it
+
+	// the failure may be caused by the lack of submodules, try to install it
 	install := exec.Command(resolver.maven, "clean", "install", "-Dcheckstyle.skip=true", "-Drat.skip=true", "-Dmaven.test.skip=true") // #nosec G204
-	install.Stdout = os.Stdout
+	install.Stdout = io.Discard
 	install.Stderr = os.Stderr
 
+	logger.Log.Debugf("resolving dependencies with command %v", install.Args)
+
 	return install.Run()
 }