运行Perl脚本时出现以下错误
Odd number of elements in hash assignment at GenerateInterchangeFromIntegrationManifest.pl line 197.
{
"Change list" : "0"
}
这是剧本:
my %labelFieldMap = (IUItemName => convertIuItemName,
Changelist => sub {},
IUItemLevel => createNormalConvert('iuItemLevel'),
ContactPOC => \&convertContacts,
Cspec => \&convertCspec,
IsNew => createBooleanConvert('isNew'),
Submitter => createNormalConvert('submitter'),
LabelType => createNormalConvert('type'),
Revision => createNestedConvert('component', 'revision'),
RevisionName => sub {},
ComponentBaseName => createNestedConvert('component', 'baseName'),
Version => createNestedConvert('component', 'version'),
PLMapping => createNormalConvert('plMapping'),
BidMapping => createNormalConvert('bidMapping'),
ClientId => createNormalConvert('clientId'),
Path => \&convertPath,
ExtendedData => \&convertExtendedData);
任何人都可以帮我解决这个问题吗?
答案 0 :(得分:5)
有几个子程序调用分配给散列,可以返回具有偶数个元素的列表(这将使列表总数为奇数,并且还会更改哪些数据是键以及列表中该点的哪些值在,这对你来说可能更糟)。正如Dallaylaen在评论中指出的那样,这可能只是一行返回“无”,return;
将在列表上下文中评估为空列表()
,即偶数长度为0。问题代码中的所有子例程调用都将在列表上下文中进行评估。
我建议使用一种简单的调试技术: