我想使用Jenkins构建更新组件870Jars atrribute值。 当我在IE中打开xml文件时,我收到以下错误
错误: - 无法显示XML页面
名称以无效字符开头。处理资源“https://svn.retailerinfo.com/svn/Stores/Po ...
时出错< 870Jars> --- ^
XML文件: -
<?xml version="1.0" encoding="UTF-8"?><Application>
<app-name>Regist</app-name>
<baseline-version>Regist_R11.6.0.51</baseline-version>
<app-version>v11.6.0.51</app-version>
<defversion>1.0.0</defversion>
<component>
<870Jars>
<filename>v10.3.0-870Jars.zip</filename>
<targetfilename/>
<version>v10.3.0</version>
</870Jars>
</component>
</Application>
有什么方法可以用数字开始标记名称吗?
我使用</870Jars>
代替&lt; 870Jars&gt;但它只是打印值而不是作为标记
答案 0 :(得分:19)
名称以数字开头的XML元素是非法 XML。你不应该从数字开始。
XML元素必须遵循以下命名规则:
- 名称可以包含字母,数字和其他字符
- 名称不能以数字或标点符号开头
- 名称不能以字母xml(或XML,或Xml等)
开头- 名称不能包含空格
可以使用任何名称,不保留任何单词。
答案 1 :(得分:0)
简单的解决方法是{concat('_',data(desired_tag_name_here))}并过滤掉其他字符中的第一个字符(如果它是破折号)。一个小窍门,但是当CData和其他方法太脏或使代码不可读时,只需通过串联标记注释,使用下一个处理程序对其进行修复,然后继续进行业务
答案 2 :(得分:-1)
尝试使用如下的CDATA:
<component>
<![CDATA[
<870Jars>
<filename>v10.3.0-870Jars.zip</filename>
<targetfilename/>
<version>v10.3.0</version>
</870Jars>
]]>
</component>