2013-09-05 38 views
29

Visual Studio Express 2012でプロジェクトをセットアップし、C#コードを追加して、エミュレータに正常にコンパイル/デプロイしました。ある時点で、私はJSONで何かしたいと思ったので、私はJson.NETフレームワーク(available as a NuGet package)を使うべきであることがわかった。私はInstall-Package Newtonsoft.Jsonというコマンドを使ってこのフレームワークを正常に追加しました。NuGetパッケージをアンインストール/再インストールできません。

MSVCが2日前に提供したアップデートをインストールしようとしましたが、インストールが失敗し、プロジェクトをもう一度開くことができなくなりました。 MSVCを再インストールしても役に立たなかったので、Windowsを以前の状態に復元しました。プロジェクトをもう一度開くことができました.NuGetパッケージ(プロジェクト内にインストールされていることを知らないと MSVCではありません)を再インストールする必要がありました。インストール時にエラーが出たので、パッケージコンソールからすべてをアンインストールしようとしました。

かいつまん:もう一度Install-Package Newtonsoft.Jsonを実行Get-Package

  • がエラー

    Newtonsoft.Json 5.0.6をインストールすることができませんでした私を与えたときに

    • Nugetパッケージコンソールが "何のパッケージがインストールされていない" と言います。あなたは、パッケージがしかし、この枠組み

  • と互換性のアセンブリ「NuGetの管理」のパッケージ]ダイアログショーなしパッケージ下が含まれていません「WindowsPhone、バージョン= V8.0」を参照するプロジェクトで、このパッケージをインストールしよう"インストール済み"と表示されますが、オンラインパッケージにはjsonパッケージがリストされ、インストール済みとマークされています(インストールできません)。
  • 今私は完全に失われています。私はパッケージを正しくインストールする方法も、正しくパッケージを削除する方法も知らない。私のプロジェクトファイルは壊れていますか?どうすれば修理できますか?


    [編集] は、今ではさらに混乱を取得します。私はちょうどNuGetパッケージマネージャー(MSVCではない)を更新し、Json.NETを再インストールしようとしました。それはまだ「インストール」の下に示されていないダイアログで

    • オンラインパッケージは、それはもうインストールとしてマークされたが、ちょうどで
    • Get-Packageをして「インストール」をクリックされて一覧表示しないでインストールとコンソールがパッケージを示し、 `アンインストール・パッケージNewtonsoft.Jsonをアンインストールしようとすると

      PM> Get-Package 
      
      Id        Version    Description/Release Notes                                                
      --        -------    -------------------------                                                
      Newtonsoft.Json    5.0.6    Json.NET is a popular high-performance JSON framework for .NET 
      
    • はパッケージ「ニュートン「を与えます」 oft.Jsonは、」私はちょうど一からやり直すと作成すべきpackagesディレクトリ

    にNewtonsoft.Json.5.0.6 『サブフォルダ「私が見ることができる私のプロジェクトフォルダに

  • 』を見つけることができませんでした新しいプロジェクト?/


    パッケージの内容。dgml:

    <?xml version="1.0" encoding="utf-8"?> 
    <DirectedGraph GraphDirection="LeftToRight" xmlns="http://schemas.microsoft.com/vs/2009/dgml"> 
        <Nodes /> 
        <Links /> 
        <Categories> 
        <Category Id="Projekt" /> 
        <Category Id="Paket" /> 
        </Categories> 
        <Styles> 
        <Style TargetType="Node" GroupLabel="Projekt" ValueLabel="True"> 
         <Condition Expression="HasCategory('Projekt')" /> 
         <Setter Property="Background" Value="Blue" /> 
        </Style> 
        </Styles> 
    </DirectedGraph> 
    
  • +2

    あなたは 'packages.config'を開き、' Newtonsoft.Json'のエントリを削除しようとすることができます(名称が変更) - 解決する必要がありますあなたの3番目の弾丸ポイント。 * NuGet Package Managerウィンドウから再インストールすることができます。あなたの2番目の箇条書きは私にそれを疑うものではありません... –

    +0

    それで、以前はパッケージマネージャを使っていましたか? NuGetをインストールしましたか?あなたはパッケージマネージャーに入り、そこからアンインストールすることができます。 (Tools - > Library Package Manager) – paqogomez

    +0

    上記のとおり、インストールされていないので、そこからアンインストールできません。面白い:私は単純な新しいプロジェクトを作成し、NuGetを介してパッケージを追加しました。そして、私もプロジェクトフォルダにpackages.configファイルがありますが、Packages.dgmlはありません。 私はちょうどその時からやり直すつもりだと思います。まだ助けてくれてありがとう。 – user826955

    答えて

    35

    解決策またはプロジェクトには、packages.configというファイルがあります。このファイルを開くと、NuGetがインストールしたすべてのパッケージが表示されます。

    ファイルは次のようになります:

    <?xml version="1.0" encoding="utf-8"?> 
    <packages> 
        <package id="Json" version="2.0.3" targetFramework="net45" /> 
    </packages> 
    

    は、単にあなたのパッケージの行を削除し、ファイルを保存します。その後

    <?xml version="1.0" encoding="utf-8"?> 
    <packages> 
    </packages> 
    

    再びNuGetを実行し、インストールする必要があります。

    JSON.NET NuGetパッケージは、ちょうどwork with a Windows Phone 8.0 projectです。 VS2012で追加NuGetマネージャはWP7バージョンのJSON.NETを取り込みます。 (パッケージ\ Newtonsoft.Json.4.5.10 \ lib \ sl3-wp \ Newtonsoft.Json.dll)

    JSON.NETは、WP8から利用できるポータブルクラスライブラリとしても利用できるようになりました(NuGetまたはソース形式で)。

    最新の情報:

    NuGetの最新バージョンにはアンインストールがあります。

    VS 2013:このソリューションでは、References and Manage NuGetパッケージを右クリックすると、左上隅に「Installed Packages」が表示されます。パッケージを選択すると、アンインストールオプションが使用可能になります。

    VS 2015:解決策では、References and Manage NuGetパッケージを右クリックし、右上の「インストール済み」タブを見つけてください。パッケージにカーソルを合わせると、アンインストールするように「X」が表示されます。

    VS 2017:ソリューション上で、右クリックし、「ソリューション用のNuGetパッケージを管理する」の左上にある「インストール済み」タブを見つけます。パッケージをクリックすると、右側のパネルが「アンインストール」ボタンになります。

    +1

    packages.configというファイルが見つかりません。エクスプローラでプロジェクトディレクトリにこのファイルが見つかりません。私のプロジェクトのルートに 'Packages.dgml'を意味しますか?あなたが言及したXMLを含んでいません。 – user826955

    +0

    これはファイルでなければなりません。 [DGMLは通常グラフィカルに表示されます](http://docs.nuget.org/docs/workflows/package-visualizer)、[基礎情報はXMLです](http://en.wikipedia.org/wiki/DGML) 。 XMLビューにアクセスできますか? – paqogomez

    +0

    元の投稿の編集内容をご覧ください – user826955

    1

    実際はちょっと混乱しますが、ソリューションを右クリックして[Manage nuget packages]を選択すると、さまざまなオプションが利用できます。そこからアンインストールすることができます。

    Json.netとWP8の詳細については、Windows Phone 8 JSONの回答を確認してください。

    23

    私は同じ問題を抱えていました。 package.configのすべての変更を行った後でもパッケージを再インストールできませんでした。ここで何が私のために働く。

    解決策フォルダには、「パッケージ」ディレクトリが必要です。このディレクトリを開き、パッケージに関連付けられているディレクトリを削除します。

    完了。

    +0

    ありがとうございました!これは私のために働いた。 –

    +0

    あなたは真の忍者です。 – Aarmora

    +0

    これも私のために働いた!ありがとう – gryzlaw

    6

    新しいWindows 10マシンで4時間しか使用できず、Visual Studio 2015で参照が機能しなかった理由、およびNuGetパッケージを復元できなかった理由を理解できませんでした。何らかの理由でTFSは、二つのパッケージフォルダを追加しました:

    場所:

    C:\ユーザーはプロジェクト\ YourProject \パッケージ\ Visual Studioの2015 \

    C YourUser \ドキュメント\:\ Users \ユーザーYourUserを\ 。nuget \ packages

    両方のパッケージフォルダが削除されたとき、私はNuGetパッケージを復元でき、すべてが再び機能しました。

    0

    私は(新規インストール)私はVS2017で同様の問題を抱えていたこのソリューションとその作品

    <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild"> 
        <PropertyGroup> 
        <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText> 
        </PropertyGroup> 
        <Error Condition="!Exists('$(SolutionDir)\.nuget\NuGet.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\.nuget\NuGet.targets'))" /> 
    </Target> 
    
    0

    を試してみました。私は比較的新しいパッケージをインストールしようとしている古いプロジェクトで作業していました。 GUIからパッケージをインストールすると、1秒間点滅してから何もしませんでした。

    問題は、私のプロジェクトの.NETターゲットがパッケージよりも低いことでした。 (私のソリューションは4.5をターゲットにしており、パッケージは4.6をターゲットにしていました)。 プロジェクトの構成で.NETターゲットを新しい十分なバージョンに変更し、再構築することで問題が解決されました。

    この問題は、次のコマンドを実行して見ることができます。

    PM> Install-Package Package.NET 
    
    Attempting to gather dependency information for package 'Package.NET.1.0.0' with respect to project 'MyProject', targeting '.NETFramework,Version=v4.5' 
    Gathering dependency information took 0.19 ms 
    Attempting to resolve dependencies for package 'Package.NET.1.0.0' with DependencyBehavior 'Lowest' 
    Resolving dependency information took 0 ms 
    Resolving actions to install package 'Package.NET.1.0.0' 
    Resolved actions to install package 'Package.NET.1.0.0' 
    Retrieving package 'Package.NET.1.0.0' from 'nuget.org'. 
    Install failed. Rolling back... 
    Package 'Package.NET.1.0.0' does not exist in project 'MyProject' 
    Package 'Package.NET.1.0.0' does not exist in folder 'C:\Code\MyProject\packages' 
    Executing nuget actions took 13.92 ms 
    Install-Package : Could not install package 'Package.NET.1.0.0'. You are trying to install this package into a project that targets '.NETFramework,Version=v4.5', 
    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 Package.NET 
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
        + CategoryInfo   : NotSpecified: (:) [Install-Package], Exception 
        + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PackageManagement.PowerShellCmdlets.InstallPackageCommand 
    
    関連する問題