当我尝试编译我的 DSC 配置时找不到模块“cChocoInstaller”

Posted

技术标签:

【中文标题】当我尝试编译我的 DSC 配置时找不到模块“cChocoInstaller”【英文标题】:Could not find the module 'cChocoInstaller' when I try to compile my DSC configuration 【发布时间】:2021-12-27 09:07:27 【问题描述】:

我正在尝试安装 Chocolatey 以使用 Powershell DSC 管理 Windows VM 上的包。

我已经准备好我的配置文件

Configuration chocandfirefox 
    Import-DscResource -ModuleName cChoco
    Import-DscResource -ModuleName cChocoInstaller
    Import-DscResource -ModuleName cChocoPackageInstaller
       
    Node 'localhost' 

        cChocoInstaller installChoco
        
            InstallDir = "c:\ProgramData\chocolatey"
        

         cChocoPackageInstaller installGit
        
             Name = "firefox"
            DependsOn = "[cChocoInstaller]installChoco"
        

    

但是当我尝试将其编译为 .mof 时,有人告诉我

> +     Import-DscResource -ModuleName cChocoInstaller
> +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Could not find the module 'cChocoInstaller'. At
> C:\Users\auser\Documents\PowerShell\DSC\Configuration_chocandfirefox.ps1:4
> char:5
> +     Import-DscResource -ModuleName cChocoPackageInstaller
> +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Could not find the module 'cChocoPackageInstaller'.
>     + CategoryInfo          : ParserError: (:) [], ParseException
>     + FullyQualifiedErrorId : ModuleNotFoundDuringParse

我确定我错过了一些基本的东西,但我已经通过 docs on DSC 和 Chocolatey 工作并且无法发现它。

【问题讨论】:

当我指定 -Name(特定的 DSC 资源名称)Import-DscResource -ModuleName cChoco Import-DscResource -ModuleName cChoco -Name cChocoInstaller Import-DscResource -ModuleName cChoco -Name cChocoPackageInstaller 时它似乎工作跨度> 【参考方案1】:

您应该只需要导入cChoco

查看GitHub repository中提供的示例之一,我们可以看到:

Configuration InstallChoco

    Import-DscResource -Module cChoco
    Node "localhost"
    
        cChocoInstaller InstallChoco
        
            InstallDir = "c:\choco"
        
        # ...
    

他们只在导入cChoco 后使用cChocoInstallercChocoInstaller 是模块 cChoco 中的一个资源。

【讨论】:

以上是关于当我尝试编译我的 DSC 配置时找不到模块“cChocoInstaller”的主要内容,如果未能解决你的问题,请参考以下文章

导入具有导出枚举的模块时找不到模块错误

将 node.js 应用程序部署到谷歌云平台时找不到模块“yargs”错误

在 NPM 注册表中发布的 Typescript 模块 - 在不同项目中使用时找不到模块

当我运行“npx react-native start”时找不到模块“@expo/metro-config”

grunt:从终端运行时找不到命令

使用 qt 和 opengl 编译 c++ 项目时找不到标识符错误