2016-12-20 13 views
1

SharpDevelop 5.1과 함께 제공되는 PackageManagement cmdlet을 사용하려고하는데 문제가 발생합니다.SharpDevelop의 PackageManagement.Cmdlet을 powershell에서 사용하는 방법

[Reflection.Assembly]::LoadFrom(".\PackageManagement.Cmdlets.dll") | Out-Null 

$test = New-Object ICSharpCode.PackageManagement.Cmdlets.GetProjectCmdlet 

결과 :

내가이

System.TypeInitializationException: The type initializer for 
'ICSharpCode.PackageManagement.PackageManagementServices' threw an exception. 
---> ICSharpCode.Core.ServiceNotFoundException: Required service not found: 
ICSharpCode.Core.IPropertyService 

내가도를 통해 반사의 DLL을 로딩 시도 가지고 TypeInitializationException 결과

import-module ".\PackageManagement.Cmdlets.dll" 

$solution = "C:\Git\TestProject\TestProject.sln" 

$project = Get-Project TestProject $solution 

을 시도한 것입니다 동일한 예외에서. 퓨전 로그를 보면

다음 라이브러리가로드 된 다음과 같습니다

PackageManagement 

NuGet.Core 

ICSharpCode.SharpDevelop 

ICSharpCode.Core 

그 자체가로드되고있는 사람 cmdlet처럼 보이지 않는다.

내가 뭘 잘못하고 있니?

답변

1

PowerShell 명령 줄에서 PackageManagement.Cmdlets.dll을 단독으로 사용할 수 없습니다. 그것은 사용되기 전에 초기화 될 필요가있는 SharpDevelop의 부분에 의존합니다.

이전에 PowerShell과 함께 명령 줄에서 사용할 수있는 SharpDevelop 4 and the NuGet PowerShell cmdlets 버전을 만들었습니다. 이 작품은 SharpDevelop 5와 함께 작동하도록 이식되지 않았습니다.

+0

이제 모든 작업을 시도했을 때 왜 작동하지 않는지 이해합니다. Matt에 대답 해줘서 고마워! SharpDevelop의 최신 버전으로 이식하기가 쉬운가요? – hoangbv15