私はTeamCityビルドで単純なPowerShellスクリプトを使用しています。Add-Type:タイプを追加できません。アセンブリ 'System.IO.Compression.FileSystem'が見つかりませんでした
System.IO.Compression.FileSystem
が必要です。エージェントには.NET 4.5.2がインストールされています。以下は、.NETフレームワークは、PowerShellスクリプトは、2行目のライン
[Reflection.Assembly]::LoadWithPartialName("System.IO.Compression.FileSystem");
Add-Type -AssemblyName System.IO.Compression.FileSystem
次ました
PSChildName Version Release Product
----------- ------- ------- -------
v2.0.50727 2.0.50727.5420
v3.0 3.0.30729.5420
Windows Communic... 3.0.4506.5420
Windows Presenta... 3.0.6920.5011
v3.5 3.5.30729.5420
Client 4.5.51209 379893 4.5.2
Full 4.5.51209 379893 4.5.2
Client 4.0.0.0
をインストールされている、実行がエラー
Add-Type : Cannot add type. The assembly 'System.IO.Compression.FileSystem' could not be found.
At C:\BuildAgent\someFile.ps1:104 char:13
+ Add-Type <<<< -AssemblyName System.IO.Compression.FileSystem
+ CategoryInfo : ObjectNotFound: (System.IO.Compression.FileSystem:String) [Add-Type], Exception
+ FullyQualifiedErrorId : ASSEMBLY_NOT_FOUND,Microsoft.PowerShell.Commands.AddTypeCommand
奇妙で失敗したが、私はことを期待しました.NET 4.5.2
を指定すると、PowerShellはアセンブリをロードできるようになりますGAC
すべてのヘルプは
何PowerShellのバージョンを使用していますか?さらに重要なのは、PowerShellが.NETのバージョンを使用していることですか? .NET 4を使用してこのライブラリを正常にロードする必要があるかもしれません。 – ForNeVeR
.NETバージョン 'v4.0.30319'でpowershell.exe.configをオーバーライドしています。 'System.IO.Compression.FileSystem'ではGAC = trueを表示しますが、同じアセンブリをロードすることはできません –