如何导入带有清单的模块

时间:2016-07-07 17:48:46

标签: powershell import module manifest

Powershell今天真的考验了我的耐心......好吧,所以我做了一个清单来获得我需要的装配。现在,当我有* .psm1和* .psd1文件时,如何正确导入。

文件夹路径:C:\ mypath \ blah \ blah \ Module \ Format-XML \

文件夹中的

文件:Format-XML.psd1,Format-XML.psm1

Import-Module -Name "C:\mypath\blah\blah\Module\Format-XML\Format-XML"

然后当我在我的模块中使用我的函数从另一个脚本调用时,无论出于何种原因,都不存在/工作。我做错了什么?

[错误] VERB-NOUN:“VERB-NOUN”一词未被识别为

的名称

[ERROR] cmdlet,函数,脚本文件或可运行程序。检查

的拼写

[错误]名称,或者如果包含路径,请验证路径是否正确,然后重试。

在* .psd1:

FunctionsToExport = '*'

在* .psm1:

#I know... not required but I tried anyways... :(
Export-ModuleMember -Function '*'

3 个答案:

答案 0 :(得分:0)

查看导入的模块。您可以通过以下两种方式执行此操作:

导入后:

$mod = Get-Module -Name Format-XML

导入期间:

$mod = Import-Module -Name "C:\mypath\blah\blah\Module\Format-XML\Format-XML" -PassThru

然后,您可以查看$mod并查看.ExportedCommands属性。列出了什么?

同时尝试删除第二个Format-XML(我假设最后一个组件指的是模块本身而不是文件夹)。

答案 1 :(得分:0)

答案:不要忘记在清单中设置根模块...... 叹息

答案 2 :(得分:0)

因此,需要将以下代码添加到psd1中。

# Script module or binary module file associated with this manifest.
RootModule = 'nameOfYourModule.psm1'