powershell 测试模块清单错误“删除不允许的元素”

mfpqipee  于 2023-02-16  发布在  Shell
关注(0)|答案(1)|浏览(187)

我在使用Powershell 7.3.x将模块发布到内部存储库时遇到问题。我可以在我的计算机上导入和使用该模块。当我尝试

Publish-Module -Path $MySourceDir\my -Repository "MyRepository" -Verbose -Force

我得到了错误

Test-ModuleManifest: The module manifest 'my.psm1' could not be processed because it is not a valid PowerShell module manifest file. Remove the elements that are not permitted: my.psd1

如果我们把

RootModule=my.psm1

从myiderpsd1文件中,它通过了测试,但模块函数没有导出。我很想"删除不允许的元素",但我不知道从哪里开始弄清楚这些是什么。有其他人遇到过这个问题并有修复或变通方法吗?

2uluyalo

2uluyalo1#

我最近在使用PowerShell 7.3.0时遇到了这个问题。我可以创建一个空的.psm1文件和一个只有

@{
    RootModule      = 'FakeModule.psm1'
    ModuleVersion   = '0.0.5'
}

并且在运行Test-ModuleManifest时得到同样的错误。我刚刚尝试注解掉RootModule,果然,这允许测试成功。
我能够发布我的模块的唯一方法是使用Windows PowerShell 5.1终端来运行命令。不确定这在您的情况下是否是一个选项?

相关问题