Skip to content

Commit ade8e50

Browse files
Merge pull request #286 from hrc8/master
java gradle 编译方式下扫描的路径不在当前目录时, 无法执行gradle命令生成依赖信息
2 parents 2a1f54e + c618285 commit ade8e50

1 file changed

Lines changed: 7 additions & 3 deletions

File tree

opensca/sca/groovy/gradle.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import (
77
"encoding/json"
88
"os"
99
"os/exec"
10+
"path/filepath"
1011
"regexp"
1112
"strings"
1213

@@ -123,10 +124,11 @@ func GradleTree(ctx context.Context, dir *model.File) []*model.DepGraph {
123124
}
124125

125126
// 复制 opensca.gradle
126-
if err := os.WriteFile("opensca.gradle", openscaGradle, 0777); err != nil {
127+
path := filepath.Join(dir.Abspath(), "opensca.gradle")
128+
if err := os.WriteFile(path, openscaGradle, 0777); err != nil {
127129
logs.Warn(err)
128130
}
129-
defer os.Remove("opensca.gradle")
131+
defer os.Remove(path)
130132

131133
cmd := exec.CommandContext(ctx, "gradle", "--I", "opensca.gradle", "opensca")
132134
cmd.Dir = dir.Abspath()
@@ -168,7 +170,9 @@ func GradleTree(ctx context.Context, dir *model.File) []*model.DepGraph {
168170
if dep == nil {
169171
continue
170172
}
171-
dep.Expand = c
173+
if dep.Expand != nil {
174+
dep.Expand = c
175+
}
172176
n.AppendChild(dep)
173177
}
174178
return true

0 commit comments

Comments
 (0)