Microsoft MVP성태의 닷넷 이야기
글쓴 사람
정성태 (techsharer at outlook.com)
홈페이지
첨부 파일
 
(연관된 글이 1개 있습니다.)

VSIX 프로젝트 빌드 시 The "VsTemplatePaths" task could not be loaded from the assembly 오류 발생

Visual Studio 2015에서 vsix 프로젝트 생성 후 EditorClassifier 유형의 확장 C# 파일을 추가하고 빌드했는데 다음과 같은 컴파일 오류가 발생했습니다.

1>C:\...\IniColorizer\packages\Microsoft.VSSDK.BuildTools.14.2.25103\tools\VSSDK\Microsoft.VsSDK.targets(656,5): error MSB4062: The "DeleteExtensionsCache" task could not be loaded from the assembly C:\...\IniColorizer\packages\Microsoft.VSSDK.BuildTools.14.2.25103\tools\VSSDK\Microsoft.VsSDK.Build.Tasks.dll. Confirm that the <UsingTask> declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.


재미있는 것은, Visual Studio를 재시작 후 다시 컴파일하니 이번에는 다음과 같은 오류 메시지로 바뀌었습니다.

The "VsTemplatePaths" task could not be loaded from the assembly C:\...\IniColorizer\packages\Microsoft.VSSDK.BuildTools.14.2.25103\tools\VSSDK\Microsoft.VsSDK.Build.Tasks.dll. Could not load file or assembly 'Microsoft.VsSDK.Build.Tasks, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. Strong name validation failed.' (Exception from HRESULT: 0x8013141A) Confirm that the <UsingTask> declaration is correct, that the assembly and all its dependencies are available, and that the task contains a public class that implements Microsoft.Build.Framework.ITask.


살펴보면, Nuget으로부터 자동 설치된 .\Microsoft.VSSDK.BuildTools.14.2.25103\tools\VSSDK\Microsoft.VsSDK.Build.Tasks.dll 파일에는 Microsoft.VsSDK.Build.Tasks.DeleteExtensionsCache 클래스가 정의되어 있었습니다. 문제는, 해당 DLL의 서명이 올바르지 않다는 것인데 이는 gacutil.exe를 이용해 직접 설치해 보면 알 수 있습니다.

C:\...\IniColorizer\packages\Microsoft.VSSDK.BuildTools.14.2.25103\tools\vssdk>"C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools\gacutil" /i Microsoft.VsSDK.Build.Tasks.dll
Microsoft (R) .NET Global Assembly Cache Utility.  Version 4.0.30319.0
Copyright (c) Microsoft Corporation.  All rights reserved.

Failure adding assembly to the cache: Strong name signature could not be verified.  Was the assembly built delay-signed?

어쩔 수 없습니다. 이 버전에서 저런 결과가 나왔으니 다른 버전을 받아야 합니다.

다행히 "Tools" / "NuGet Package Manager" / "Manage NuGet Packages for Solutions..." 메뉴를 들어가니 다음과 같이 업데이트를 받으라고 나오는데, 이를 모두 선택하고 "Update" 버튼을 눌러줍니다.

nuget_package_update_1.png

적용 후 Visual Studio를 재시작하고 Clean 후 다시 빌드해 주면 끝!

정리하면, 이 문제는 14.2.25013 버전에서 발생하고 적어도 14.2.25201에서는 해결이 되었습니다.





[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]

[연관 글]






[최초 등록일: ]
[최종 수정일: 4/26/2016]

Creative Commons License
이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다.
by SeongTae Jeong, mailto:techsharer at outlook.com

비밀번호

댓글 작성자
 




... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...
NoWriterDateCnt.TitleFile(s)
12530정성태2/4/202122922개발 환경 구성: 536. Wireshark + C#으로 확인하는 TCP 통신의 Receive Window
12529정성태2/4/202122247개발 환경 구성: 535. Wireshark + C#으로 확인하는 TCP 통신의 MIN RTO [1]
12528정성태2/1/202122718개발 환경 구성: 534. Wireshark + C#으로 확인하는 TCP 통신의 MSS(Maximum Segment Size) - 윈도우 환경
12527정성태2/1/202122681개발 환경 구성: 533. Wireshark + C#으로 확인하는 TCP 통신의 MSS(Maximum Segment Size) - 리눅스 환경파일 다운로드1
12526정성태2/1/202119208개발 환경 구성: 532. Azure Devops의 파이프라인 빌드 시 snk 파일 다루는 방법 - Secure file
12525정성태2/1/202117754개발 환경 구성: 531. Azure Devops - 파이프라인 실행 시 빌드 이벤트를 생략하는 방법
12524정성태1/31/202117496개발 환경 구성: 530. 기존 github 프로젝트를 Azure Devops의 빌드 Pipeline에 연결하는 방법 [1]
12523정성태1/31/202120527개발 환경 구성: 529. 기존 github 프로젝트를 Azure Devops의 Board에 연결하는 방법
12522정성태1/31/202122833개발 환경 구성: 528. 오라클 클라우드의 리눅스 VM - 9000 MTU Jumbo Frame 테스트
12521정성태1/31/202120056개발 환경 구성: 527. 이더넷(Ethernet) 환경의 TCP 통신에서 MSS(Maximum Segment Size) 확인 [1]
12520정성태1/30/202119376개발 환경 구성: 526. 오라클 클라우드의 VM에 ping ICMP 여는 방법
12519정성태1/30/202118950개발 환경 구성: 525. 오라클 클라우드의 VM을 외부에서 접근하기 위해 포트 여는 방법
12518정성태1/30/202137457Linux: 37. Ubuntu에 Wireshark 설치 [2]
12517정성태1/30/202124090Linux: 36. 윈도우 클라이언트에서 X2Go를 이용한 원격 리눅스의 GUI 접속 - 우분투 20.04
12516정성태1/29/202120494Windows: 188. Windows - TCP default template 설정 방법
12515정성태1/28/202123058웹: 41. Microsoft Edge - localhost에 대해 http 접근 시 무조건 https로 바뀌는 문제 [3]
12514정성태1/28/202123415.NET Framework: 1021. C# - 일렉트론 닷넷(Electron.NET) 소개 [1]파일 다운로드1
12513정성태1/28/202118577오류 유형: 698. electronize - User Profile 디렉터리에 공백 문자가 있는 경우 빌드가 실패하는 문제 [1]
12512정성태1/28/202121242오류 유형: 697. The program can't start because VCRUNTIME140.dll is missing from your computer. Try reinstalling the program to fix this problem.
12511정성태1/27/202120623Windows: 187. Windows - 도스 시절의 8.3 경로를 알아내는 방법
12510정성태1/27/202121503.NET Framework: 1020. .NET Core Kestrel 호스팅 - Razor 지원 추가 [1]파일 다운로드1
12509정성태1/27/202119456개발 환경 구성: 524. Jupyter Notebook에서 C#(F#, PowerShell) 언어 사용을 위한 환경 구성 [3]
12508정성태1/27/202120645개발 환경 구성: 523. Jupyter Notebook - Slide 플레이 버튼이 없는 경우
12507정성태1/26/202121080VS.NET IDE: 157. Visual Studio - Syntax Visualizer 메뉴가 없는 경우
12506정성태1/25/202123720.NET Framework: 1019. Microsoft.Tye 기본 사용법 소개 [1]
12505정성태1/23/202119049.NET Framework: 1018. .NET Core Kestrel 호스팅 - Web API 추가 [1]파일 다운로드1
... 46  47  48  49  50  51  52  53  54  55  56  57  58  59  [60]  ...