繁体   English   中英

Groovy 逐行读取文件并存入列表

[英]Groovy read file line by line and store it into list

我有一个名为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。 如果我像这样使用文件 class - list = new File("${workspace}/apps.txt").collect {it}然后它仅在 Jenkins 主节点上搜索文件,我得到 fileNotFoundException。

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

你的尝试很接近,但把事情搞混了。

这些是工作方式:

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

注意中间的.text调用。

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

或者使用 Jenkins 提供的助手。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM