簡體   English   中英

未找到 AWS PowerShell EventBridge 程序集模型

[英]AWS PowerShell EventBridge assembly model not found

錯誤:

新對象:找不到類型 [PutEventsRequestEntry]:驗證是否已加載包含此類型的程序集

代碼:

$entry = New-Object -Type Amazon.EventBridge.Model.PutEventsRequestEntry

$entry.Detail = $detailObject
$entry.Source = "inbound"
$entry.DetailType = "record sent"
$entry.Time = Get-Date -Format "yyyy-MM-ddTHH:mm:ssZ"

Write-EVBEvent -Entry $events -Select "*"

我通過以下命令安裝了 AWS.Tools.Common 和 AWS.Tools.EventBridge 模塊:

Install-Module -Name AWS.Tools.EventBridge

我可以看到他們用這個命令列出:

Get-Module -ListAvailable

這段代碼最初是有效的,我不確定發生了什么變化。 但它位於 WorkSpaces 實例上,因此可能發生任何事情。

我是否還需要安裝 AWS 開發工具包?

https://docs.aws.amazon.com/sdkfornet/v3/apidocs/items/EventBridge/TPutEventsRequestEntry.html

我嘗試這樣安裝:

Install-Package AWSSDK.EventBridge -Version 3.7.5.29

未找到指定搜索條件和包名稱“AWSSDK.EventBridge”的匹配項

我嘗試像這樣安裝程序集:

從這里下載 SDK: https ://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-obtain-assemblies.html

將 AWSSDK.EventBridge.dll 和 AWSSDK.Core.dll 文件移動到腳本根目錄,並在屬性中取消阻止文件。

加載庫:

Add-Type -LiteralPath "./AWSSDK.Core.dll"
Add-Type -LiteralPath "./AWSSDK.EventBridge.dll"

但我仍然得到與 PutEventsRequestEntry 對象相關的相同錯誤。

編輯:我刪除了所有關聯的庫,並使用以下命令重新安裝:

Install-Module -Name AWS.Tools.Installer
Install-AWSToolsModule -Name EventBridge -CleanUp

不過沒有變化。

這是 AWS PowerShell 工具和 PowerShell 5 的一個已知問題,沒有明確的解決方案,除了升級到 PowerShell 7 或不斷重新安裝直到它工作...

在多次重試安裝模塊后,該問題會自行解決。

即使在 PS7 下我仍然遇到問題,還需要運行此命令:

Import-Module AWS.Tools.EventBridge

這里有一些細節:

https://github.com/aws/aws-tools-for-powershell/issues/273

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM