我想读取一个XML文件使用在Jenkins,直接从Jenkinsfile。XML格式良好,如
<?xml version="1.0" encoding="UTF-8"?>
<node1>
<element1>element</element1>
<element2>elem</element2>
</node1>
等等
我正在用
阅读这个文件def myfile = readFile(file: "filePath")
def myxml = new XmlParser().parse(myfile)
当我运行这段代码时,我得到这个错误:
java.net.MalformedURLException: no protocol: <?xml version="1.0" encoding="UTF-8"?>
在我看来,它试图读取一个url,尽管我要求读取的文件在我的本地机器上,我基于它来写路径。
有什么问题吗?我是不是用错了XmlParser
?我的想法是,在我正确阅读这个文件之后,更改一个字段,然后编写新文件,所以我也很感谢任何关于这一步的帮助
XmlParser().parse(String)
接受一个URI,它将在其中将指定URI的内容解析为节点树。相反,你必须使用XmlParser().parseText(String)
,它将字符串转换为节点树。
def myfile = readFile(file: "$filePath")
def myxml = new XmlParser().parseText(myfile)