Ошибка при установке пакета "Newtonsoft.Json" - PullRequest
0 голосов
/ 28 октября 2019
Install-Package : Could not install package 'Newtonsoft.Json 12.0.2'. You are trying to install this 
package into a project that targets 'native,Version=v0.0', but the package does not contain any 
assembly references or content files that are compatible with that framework. For more information, 
contact the package author.
At line:1 char:1
+ Install-Package Newtonsoft.Json
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], Exception
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets. 
   Instal

1 Ответ

0 голосов
/ 28 октября 2019

Причина ошибки:

Эта ошибка всегда возникает, когда вы пытаетесь установить один пакет nuget в C++/CLI проект. Хотя проект C++/CLI является управляемым кодом, пока Nuget не поддерживает этот сценарий.

В Github / Nuget есть одна открытая проблема, см. # 8195 , вы можете отслеживать эту проблему, чтобы получать уведомления, если есть какие-либо обновления.

Обходные пути:

  1. Вы можете попробовать Ответ Даниэля , это помогает многим участникам с похожей проблемой.

  2. Для меня, так какпакет nuget на самом деле является xx.zip файлом, который содержит сборки и некоторые файлы. Мы можем загрузить файл xx.nupkg (пакет nuget) здесь .

enter image description here

Тогда вы 'Получите один файл xx.nupkg, переименуйте его в xx.zip и распакуйте его. Теперь вы можете увидеть папку lib, которая содержит сборки для различных целевых структур. Если ваш проект C ++ / CLI предназначен для .net framework 4.5 и выше, выберите папку net45. Если ваш проект нацелен на .net framework 4.0, выберите папку net40 ...

. Мы можем скопировать Newtonsoft.Json.dll и Newtonsoft.Json.xml в каталог проекта или любую локальную папку. Затем щелкните правой кнопкой мыши проект => Добавить ссылку => Обзор =>, чтобы добавить эту ссылку вручную. После этого введите using namespace Newtonsoft, чтобы проверить, может ли Intellisense хорошо распознать эту ссылку.

enter image description here

Если вы столкнулись с ошибкой C4199 при компиляции и сборке этого проекта, какя, попробуйте это .

Надеюсь, что все выше помогает:)

...