Dynamics用SolutionPackager.exe打包报值不能为空错误如何解决
问题根因
你遇到的值不能为空 参数名:path错误是Dynamics 8.2版本SolutionPackager的已知校验逻辑问题:空的<EntityRelationships>节点缺失必填的XMLSchema命名空间声明时,工具在托管包生成阶段解析关系路径属性会触发空引用异常。你的日志中已经完成非托管包打包,报错出现在后续托管包处理环节,也符合该问题的触发特征。
你当前的Relationship.xml仅声明了xsi命名空间,缺少xsd命名空间,不符合SolutionPackager的XSD校验规则,是触发报错的直接原因。
无自定义实体关系场景下Relationship.xml的正确配置规则
可选两种方案处理:
- 方案1:补全命名空间的合法空配置
如果你需要保留Relationship.xml文件,正确的空配置需包含完整的命名空间声明,示例如下:<?xml version="1.0" encoding="utf-8"?> <EntityRelationships xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> </EntityRelationships> - 方案2:直接删除Relationship.xml文件
如果你整个解决方案完全不包含任何自定义实体关系、也未将系统实体关系作为解决方案组件导入,可直接删除.\Other\Relationships.xml文件,SolutionPackager会自动跳过实体关系组件的校验和打包,不会触发错误。
验证方法
修改配置后可先执行仅非托管包打包命令验证问题是否解决:
SolutionPackager.exe /a:pack /z:D:\Source\github\D365-PowerKanban\package.zip /e:verbose /allowunmanaged
内容的提问来源于stack exchange,提问作者greg-e
相关产品推荐
相关产品推荐

