프로젝트가“.NETFramework, Version = v4.5”프레임 워크를 참조하지 않습니다.
VS 2015를 사용하고 있습니다.
프로젝트가 ".NETFramework, Version = 4.5"프레임 워크를 참조하지 않습니다. project.json의 "frameworks"섹션에 ".NETFramework, Version = 4.5"에 대한 참조를 추가 한 다음 NuGet 복원을 다시 실행합니다.
MVC 레이어에 추가 한 직후 데이터 액세스 및 비즈니스 로직 레이어에서이 오류가 발생합니다. 그때까지는 상황이 괜찮 았지만 무엇이이 오류를 유발했는지 모르겠습니다. 내 project.json은 다음과 같습니다.
{
"version": "1.0.0-*",
"description": "foo bar Class Library",
"authors": [ "foo bar" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"frameworks": {
"net451": { },
"dotnet5.4": {
"dependencies": {
"Microsoft.CSharp": "4.0.1-beta-23516",
"System.Collections": "4.0.11-beta-23516",
"System.Linq": "4.0.1-beta-23516",
"System.Runtime": "4.0.21-beta-23516",
"System.Threading": "4.0.11-beta-23516"
}
}
}
}
내가 시도한 것은 다음과 같습니다.
- 이 답변 에서 볼 수 있듯이 "dotnet5.4"를 "net451"로 바꾸고 삭제합니다 .
결과는 동일한 오류입니다.
- "dotnet5.4"를 "net45"로 바꾸고 "net451"은 그대로 둡니다. 이로 인해 새로운 오류가 발생합니다.
project.json에 런타임 섹션이 없습니다. project.json에 ' "runtimes": { "win": {}}'을 추가 한 다음 NuGet 복원을 다시 실행해야합니다.
이 오류가 제안하고 추가 한대로 시도했습니다.
"runtimes": {
"win": {}
},
이 오류가 발생하여 과거로 이동할 수 없습니다.
project.json은 대상 런타임으로 '승리'를 나열하지 않습니다. project.json의 "runtimes"섹션에 ' "win": {}'을 추가 한 다음 NuGet 복원을 다시 실행해야합니다.
나는 이미 "승리"를 추가했고 이것은 붉은 청어처럼 느껴지기 시작했습니다. project.json을 직접 변경하는 것은 NuGet이 이것을 처리하지 않습니까?
나는 실제로 문제를 알아 냈다. 결국 Restore Nuget Packages
솔루션 수준에서 를 클릭하고 PCL
파일 을 컴파일 한 다음 나머지 솔루션 을 컴파일했습니다 .
도움이 되었기를 바랍니다.
이 같은 문제가 발생 bin
하여 obj
폴더 및 폴더 의 내용 뿐만 아니라 .vs
솔루션을위한 디렉토리 도 삭제해야했습니다 .
나는 같은 문제가 있었다-이것은 project.json 대신 .csproj 파일을 사용하는 Visual Studio 2017.3을 사용하여 여전히 발생합니다. 흥미롭게도 오류 메시지에는 여전히 "project.json"이라는 텍스트가 포함되어 있습니다.
이 문제의 원인은 여기에 설명 된대로obj\project.assets.json
정리 중에 제거되지 않는 이전 빌드 의 잠금 파일 또는 파일 (VS 버전에 따라 다름) 인 것으로 보입니다 .
/obj
디렉토리를 수동으로 삭제하는 것이 빠른 해결 방법입니다.
"새"프로젝트 (예 : VS 2017에서 만든 .NET Core 또는 netstandard 프로젝트)와 동일한 디렉터리에 "이전"프로젝트 (예 : VS 2015에서 만든 .NET 4.6 프로젝트)가있는 경우 계속해서 싸울 것입니다. 둘 다 ./obj
다른 방식으로 dir을 사용합니다 . 여기에 더 많은 정보가 있습니다. .
msbuild 해결 방법은 프로젝트 중 하나가 다른 obj
디렉토리를 사용하도록하는 것 입니다. "이전"csproj에 추가했습니다.
<PropertyGroup>
<!-- Needed due to old project and new project in same directory: https://github.com/NuGet/Home/issues/5126 -->
<BaseIntermediateOutputPath>obj_netfx\</BaseIntermediateOutputPath>
</PropertyGroup>
불량 project.lock.json이이 문제를 일으키는 것으로 나타났습니다. 파일을 삭제하면 문제가 사라졌습니다.
다음 은 project.lock.json에 대한 몇 가지 문서입니다.
Some further advice would be to ensure that project.lock.json is ignored in your git ignore file, and to try a full git clean. Make sure you understand the implications of a Git clean before you do that though.
I had the same issue after updating to Visual Studio for Mac 7.4 (build 1033):
Error: Your project is not referencing the "MonoAndroid,Version=v7.1" framework. Add a reference to "MonoAndroid,Version=v7.1" in the "frameworks" section of your project.json, and then re-run NuGet restore.
I don't have any json project files. The tips in here did not help either, so I had to find out the hard way that I had to install the lastest Android SDK (Oreo 8.1) in addition to my target SDK (Nougat 7.1).
I have same issue, but i've solved by adding proper nugget package resource at vs2017-->tools-->options-->Nugetpacakge manager--->updated
the proper package url.
Refer below image
I am having the same issue but in a different way.
Your project does not reference ".NETFramework,Version=v4.5" framework. Add a reference to ".NETFramework,Version=v4.5" in the "TargetFrameworks" property of your project file and then re-run NuGet restore.
Added reference in TargetFrameworks
property.
Rebuilt the project after deleting obj
bin
and .vs
. Still it throws the same.
'code' 카테고리의 다른 글
Twisted에서 Select / poll 대 epoll 반응기의주의 사항 (0) | 2020.09.05 |
---|---|
Android의 datepicker 대화 상자에서 최대 날짜를 어떻게 설정합니까? (0) | 2020.09.04 |
Ansible로 새 사용자 및 암호 생성 (0) | 2020.09.04 |
iPhone 응용 프로그램의 암호 필드에서 텍스트를 어떻게 가리나요? (0) | 2020.09.04 |
Capistrano 오류 tar : tar 아카이브처럼 보이지 않습니다. (0) | 2020.09.04 |