Visual Studio 2015에서 패키지를 설치할 수 없습니다


183

내가 찾을 수있는 모든 패키지를 시도했지만 아무도 프로젝트에 설치할 수 없습니다. 사용 가능한 확장 및 업데이트 목록에 나열된 모든 업데이트를 설치했습니다. 예를 들어 SendGrid를 설치하려고하면 결과가 나타납니다 (다른 모든 패키지의 결과와 동일).

Attempting to gather dependencies information for package 'Sendgrid.6.1.0' with respect to project 'UI\MyApplication.MVC', targeting '.NETFramework,Version=v4.5.2'
Attempting to resolve dependencies for package 'Sendgrid.6.1.0' with DependencyBehavior 'Lowest'
Resolving actions to install package 'Sendgrid.6.1.0'
Resolved actions to install package 'Sendgrid.6.1.0'
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
For adding package 'SendGrid.SmtpApi.1.3.1' to project 'MyApplication.MVC' that targets 'net452'.
Adding package 'SendGrid.SmtpApi.1.3.1' to folder 'C:\Users\Keith\Source\Workspaces\MyApplication\MyApplication.MVC\packages'
Install failed. Rolling back...

지구상에서 Visual Studio 2015 및 새로운 "개선 된"NuGet 패키지 관리자에 문제가있는 유일한 사람은 아닙니다.

업데이트 :
글쎄, VS2015 템플릿 (웹)에서 새 프로젝트를 만들었고 패키지가 제대로 설치 되었기 때문에 솔루션에 이상한 것이 있어야합니다. 문제를 발견하면 다른 사람들이 같은 문제를 겪을 경우 해결 방법을 게시합니다.

업데이트 2 :
좋아, 그것은 우리의 솔루션이 아닙니다. 새로운 솔루션을 처음부터 다시 작성하고 (개발 시간이 많이 소요될 수 있음) 몇 가지 패키지 (Identity, EF, SendGrid)를 추가하고 솔루션을 VSO에 체크인 한 후 다른 개발자가 새로 작성합니다. 분기 및 빌드 오류가 발생합니다. 개별 프로젝트의 NuGet 패키지로 이동하면 추가 한 패키지가없는 것처럼 작동합니다. 다른 사람이 이것을 경험?


1
사용 VS2013은 VS2015 그 사용에 대한 다음 매우 문제가 VS2015에서 열어 및 캐리입니다 패키지를 추가합니다
롭 윅

답변:


124

tl; dr-삭제 :

%AppData%/Nuget/Nuget.config

경고 : 사용자 정의 NuGet 소스가있는 경우 해당 소스가 제거되므로 다시 추가해야합니다.


더 긴 버전 :

NuGet 구성이 손상되었을 수 있습니다. 오 아니요 :(

Nuget.config는 NuGet이 가져 오는 모든 위치를 추적하고 다른 것을 구성하는 데 사용되는 파일입니다. 아마도이 xml 파일이 어떻게 든 깨졌습니다.

  • 이 경로로 이동하십시오 : C:\Users\{{username}}\AppData\Roaming\
  • 지우다 Nuget.config
  • 좋은 측정을 위해 VS를 다시 시작하십시오.

참고 : 2017 년 좋은 날에는 파일이 다음과 같아야합니다

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageRestore>
    <add key="enabled" value="True" />
    <add key="automatic" value="True" />
  </packageRestore>
  <activePackageSource>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" />
  </activePackageSource>
  <packageSources>
    <add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <!-- Others -->
  </packageSources>
  <packageSourceCredentials>
    <!-- secret stuff -->
  </packageSourceCredentials>
</configuration>

감사합니다, 그것은 깔끔한 솔루션이었습니다
Nic

이것은 당신도 내 시간을 절약 해 주셔서 감사합니다.
Rameshwar Vyevhare

1
놀라운 우연의 일치. 1 년 전의이 게시물은 대답이 필요할 때 바로 눈앞에서 편집됩니다. 감사!
Jason Spake

1
이것을 부딪 히게해서 미안하지만 내 것이 특별해야했고, "NuGet.Config"라고 불 렸는데, 이것은 NTFS에 매우 특화된 것입니다!
TGP1994

2
(실제로 구성을 전혀 삭제할 필요조차없는 것으로 나타났습니다. Visual Studio를 다시 시작해야했습니다.)
TGP1994

415

VS2015를 닫았다가 다시 열면 문제가 해결됩니다.

경우에 따라 영향을받는 프로젝트를 다시로드하는 것만으로도 작동하는 것 같습니다.


3
VS를 닫은 후 솔루션의 'packages'폴더를 압축하고 다시 시작했습니다.
wislon

6
VS의 모든 인스턴스를 닫아야했지만 영향을받은 인스턴스 만 닫으면 충분하지 않았습니다.
Rory McCrossan

4
너무 간단 해 보이지만 아직 +111 표입니다! 나도 일 했어!
Anthony Nichols

22
왜 마이크로 소프트?!?! 왜 이것이 최선의 대답 (그리고 나를 위해 일한 것)이어야합니까?
Matt Ruwe

2
나는 대답에 익숙하지 않지만 효과가있다. 우리는 "왜"가 필요하다
Zinov

32

필자의 경우이 솔루션을 찾았습니다. NuGet Package Manager를 업데이트하십시오.

이것을하기 위해:

  1. VS에서 도구-> 확장 및 업데이트로 이동하십시오.
  2. 열기 업데이트 왼쪽에 메뉴 옵션을 선택한 다음 Visual Studio 갤러리를 .
  3. Nuget Package Installer에 대한 업데이트가 있으면 오른쪽 목록에 표시되어야합니다. 업데이트를 클릭하십시오
  4. Visual Studio를 다시 시작하십시오.

이를 통해 문제없이 패키지를 다시 설치할 수 있습니다.

도움이 되었기를 바랍니다!


1
나는 이것을 따랐지만 Nuget을 위해 업데이트가 보류되지 않았다. "웹 도구"에 대한 것이 하나 있는데 이는 "너겟 구성이 유효하지 않습니다"라는 오류를 해결했습니다.
RyanJMcGowan

1
"웹 도구"를 업그레이드 한 것이 아니라 확장 업데이트를 설치하려면 Visual Studio를 다시 시작해야합니다. 다시 시작하면 나를 위해 일했습니다.
코더 조

나를 위해
Aaron

필자의 경우 사용 가능한 업데이트가 없지만 dotnet.myget.org/F/nuget-vsix/vsix 에서 최신 버전을 다운로드하여 작동했습니다.
DavidC

20

내 경우 업데이트에서 Microsoft.CodeDom.Providers.DotNetCompilerPlatformMicrosoft.Net.Compilers 발생하는 문제를.

삭제 bin, objpackages폴더 및 Visual Studio 2015을 다시 시작하면 해결 나를 위해 문제를.


1
다른 솔루션은 작동하지 않았지만이 솔루션은 작동했습니다. '패키지'를 삭제하는 것이 저의 열쇠였습니다
Gordon Slysz

1
패키지 삭제가 작동하는 이유를 모르겠지만 작동합니다! 그래도 아무것도 업데이트하지 않았으며 Visual Studio 2010에서 2015로, .NET 4.0에서 4.5로 마이그레이션했습니다.
수호자 1

'packages'폴더는 어디에서 찾을 수 있습니까? bin과 obj 만 있습니다.
데니

8

모든 NuGet 캐시를 지워야합니다. 이를 위해 옵션으로 이동하여 다음과 같이 클릭하십시오.

여기에 이미지 설명을 입력하십시오


예수, 세상에, 당신은 내 목숨을 구했고, 미쳤어 ... 나는 항상 "설치 실패. NuGet 구성 파일을 삭제하려고 시도하면 허용 된 답변을 말하고 VS 및 컴퓨터 다시 시작을 시도했습니다 ... 나겟 피드를 지우고 다시 구성했습니다. 정말 고마워요!
TiagoM

7

일반적으로 VS 2015를 닫고 다시 열면 내가 겪었던 대부분의 문제가 해결되었습니다 . 일단 내 컴퓨터 중 하나에서 수리를 실행해야했습니다.

그러나 나는 이것을 Closing and re-opening VS2015 resolved the issue for me 하려고했습니다. 대신 프로젝트 를 마우스 오른쪽 버튼으로 클릭하고 프로젝트 언로드 를 클릭 한 다음 마우스 오른쪽 버튼을 클릭하고 프로젝트 다시로드 그러면 Nuget 관리가 작동 했습니다!


4

VS2015를 업데이트 2로 업데이트하고 웹 사이트에서 패키지를 관리하려고 시도하고 "NuGet 구성 파일이 유효하지 않습니다"라는 오류를 수신 한 후이 페이지에 방문한 모든 사용자를 돕기 위해 이것은 알려진 문제입니다.

https://connect.microsoft.com/VisualStudio/feedback/details/2698136/nuget-configuration-is-invalid-manage-nuget-packages-for-solution-disabled

http://dist.nuget.org/index.html 에서 패키지 관리자 3.4.4 (베타)를 설치하여 다시 작업했습니다.

또한 Visual Studio 용 업데이트 3도 수정 사항이 포함되어 있습니다.


고마워요! :)
Ramanpreet Singh 2018 년

3

내 생각에 Nuget Package Manager가 VSO와 엉망입니다. 새 프로젝트를 만들고 패키지를 추가하고 TFS를 체크인하십시오. 그런 다음 집에 가서 "최신 버전 얻기"를 실행하고 Nuget Package Manager가 패키지를 복원하지 않기 때문에 실패합니다. 해결책 : 내 집 컴퓨터에서

  1. Nuget Package Manger를 열고 설치된 모든 패키지를 제거하십시오.
  2. 참조 폴더를 열고 설치 한 모든 패키지에 대해 마우스 오른쪽 단추를 클릭 한 후 삭제를 클릭하십시오.
  3. Nuget Package Manager를 통해 다시 설치
  4. 체크인

새로운 프로젝트에서 패키지를 추가 / 업데이트하려고 시도했지만 동일한 실패 결과가 발생했습니다. 패키지 관리자가 VS2015에서 업데이트 될 때까지 내가 VS2013로 다운 그레이드 한
clockwiseq

3

도구-> 확장 및 업데이트를 통해 Nuget Package Manager를 다시 설치하여이 문제를 해결할 수있었습니다.


3

Visual Studio 2017 에서이 문제가 발생했습니다. .Net과 C #에 대한 두 개의 클래스 라이브러리 프로젝트 가 있음이 밝혀졌습니다 . .Net 용 패키지를 만들었고 특정 패키지 (내 경우에는 Nunit)를 설치하려고 할 때 오류 메시지가 나타납니다.

C # 클래스 라이브러리 로 프로젝트를 다시 작성 하면 문제가 해결되었습니다.


1

필자의 경우이 문제는 각 프로젝트의 대상 프레임 워크 설정 이 일치하지 않아 발생 했습니다 . 새 프로젝트를 만들 때 VS 2015의 기본값은 4.5.2이지만 모든 nuget 패키지는 4.6을 위해 빌드되었습니다.

어떤 이유로 VS 2015에서 이러한 오류가 표시되지 않았습니다. 새로운 빈 프로젝트를 만들고 거기에 내 프로젝트를 추가하려고 할 때까지 나는 그들을 보지 못했습니다. 초기 설정 중에 프로젝트 이름을 몇 번 바꿨 기 때문에이 동작이 악화되었을 수 있습니다.

나는 문제를 해결 했다.

  • 프로젝트의 대상 프레임 워크를 4.6으로 변경
  • VS 2015 마감
  • "packages", "obj"및 "bin"폴더 삭제
  • 솔루션을 다시 열고 너겟 패키지를 다시 추가하십시오.

1

Visual Studio 2015 업데이트 3을 사용하고 있으며이 오류를 재현 할 수있었습니다 (업데이트 3에는 수정 사항이 포함되어 있음).

위에서 제안한 것처럼, 안정적인 수정은 다음을 수행하는 것입니다. 1) Visual Studio를 종료하고 2) 패키지 폴더를 삭제 하십시오. 3) VS를 다시 시작하십시오.

그러나 ... 어떤 이유로 VS를 즉시 종료하지 않으려는 경우 문제가있는 개별 프로젝트 대신 ' 솔루션을 위해 NuGet 패키지 관리 '옵션 을 선택하여 모든 프로젝트에서 패키지를 추가 / 제거 할 수있었습니다. .


모두가 말하는 패키지 폴더는 어디에 있습니까?
ShrimpCrackers

@ShrimpCrackers-솔루션 (.sln) 파일과 동일한 위치에 있음
controlbox

1

Visual Studio 2015를 복구하면이 문제가 해결 된 것 같습니다. GitHub의 NuGet에 대해서는 이 문제 를 참조하십시오 .


1

Visual Studio를 다시 시작하면 효과가 있습니다. Visual Studio를 다시 시작하십시오.


0

이 문제가 있었는데 솔루션 수준 packages폴더 에서 문제가 발생한 것 같습니다 . 폴더의 내용을 삭제하고 nuget모든 패키지를 다시 설치 하도록 했습니다.

그런 다음 새 패키지를 다시 설치할 수 있습니다.


0

패키지 폴더를여십시오. 확장자가 .deleteme 인 파일이 있는지 확인하십시오 (예 : Newtonsoft.Json.9.0.1.deleteme). .deleteme 파일이있는 모든 패키지를 수동으로 삭제하십시오. .deleteme 파일을 삭제하십시오. Nuget Explorer를 닫고 엽니 다.


0

너겟의 "패키지 소스"를 다음으로 변경하십시오. All

세부 정보 : 위의 어느 것도 내 경우에 도움이되지 않았습니다. 내 문제는 하나의 개인 피드로만 제한되었다는 것입니다. "패키지 소스"를로 변경하면 All문제가 해결되었습니다. 문제의 핵심은 개인 pkg이 nuget.org의 다른 pkg에 종속되어 있다는 것입니다.

나는 이것이 누군가를 도울 수 있기를 바랍니다.


0

제 경우에는 위의 어느 것도 도움이되지 않았습니다. 필자의 경우 문제의 근본 원인은 이전에 패키지를 제거했지만 소스 제어 변경 (내 경우에는 TFS)을 확인하지 않았기 때문입니다. 변경 사항 (= 패키지 폴더에서 파일 삭제)을 확인한 후 패키지를 다시 설치할 수 있습니다.


0

필자의 경우 soultion 디렉토리에 빈 packages.config 파일이 있었고이 파일을 삭제 한 후 업데이트 성공

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.