gpt4 book ai didi

jenkins - Groovy 逐行读取文件并将其存储到列表中

转载 作者:行者123 更新时间:2023-12-02 19:22:41 32 4
gpt4 key购买 nike

我有一个名为 apps.txt 的文件,其中包含三个应用名称

前端应用

授权服务

连接器服务*

在 jenkins 管道中,我想对它们一个一个地执行一些操作,所以我试图使用这段代码将它们放入 groovy 列表中 -

                    list = readFile.readFileLineByLine("${workspace}/apps.txt").collect {it}
for (item in list) {
println "I need to perform some operations on files"
}

但是得到 groovy.lang.MissingPropertyException。如果我使用这样的文件类 - list = new File("${workspace}/apps.txt").collect {it} 然后它只在 Jenkins 主节点上搜索文件,我得到fileNotFoundException。

如果我使用 list = readFile("${workspace}/apps.txt").collect {it} 然后列表逐字符获取值。我如何从 apps.txt 中获取应用名称以便对每个应用执行操作。

最佳答案

您的尝试很接近,但混淆了。

这些是工作方式:

def list = new File("${workspace}/apps.txt").text.readLines()

注意中间的 .text 调用。

def list = readFile("${workspace}/apps.txt").readLines()

或者使用 Jenkins 提供的助手。

旁注:.collect{it} 只是 .collect() - 通常只是需要复制列表。由于文件中的读取行已经急切阅读,那些是副本。

关于jenkins - Groovy 逐行读取文件并将其存储到列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62839572/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com