2017-12-11 31 views
0

私は最近、Win VS 2017 XamarinプロジェクトをXamarin Forms 2.5.0.212934に更新しました。他のパッケージをいくつか更新し、Microsoft.AppCenter 1.0.1を同時に追加しました。 Xamarin.Android名前空間内のいくつかのパッケージに対する依存関係は、それらを26.1.0.1に更新するように強制しました。今すぐビルドすると、次のエラーが表示されます。Xamarin.Android.Support.Vector.Drawableパッケージ破損ビルドへの参照

"このプロジェクトでは、このコンピュータに存在しないNuGetパッケージを参照しています。NuGetパッケージリストアを使用してください:http://go.microsoft.com/fwlink/?LinkID=322105。 ... \ packages \ Xamarin.Android.Support.Vector.Drawable.23.3.0 \ build \ Xamarin.Android.Support.Vector.Drawable.targets。 "

明らかに古いバージョンへの参照が残っています。 VSのNuGetオプションは、自動的にパッケージをチェックしてダウンロードするように設定されています。復元、アンインストール、再インストールの多数の組み合わせを試しましたが、この問題は解決できません。私は旧バージョンへの参照をプロジェクトで検索しましたが、見つけませんでした。 NuGetのパッケージ管理はまだ私にとってブラックホールであるため、どこから見えるか分かりません。プロジェクトファイルをソース管理から既知の正常な状態に復元するときと同じエラーが発生するため、プロジェクトレベルよりも高いと思います。

はどこでこの依存関係を検索します、または私が行方不明ですNuGetと、それを自動的に解決するにはいくつかの方法がありますか?

答えて

0

根本的な原因は依然として謎ですが、私はこの問題を解決することができました。私は将来誰にでも役立つ場合に備えて、私の決議を文書化します。

「欠落している」ファイルへのパスが相対的であり、2つのディレクトリのみを検索したことがわかりました。何らかの理由で、このプロジェクトが(VS/Xamarinテンプレートから)作成されたときに 'src'フォルダの下に置かれ、このエラーの相対パスが間違っていました。これをテストするために、エラーが参照された相対パスに不足しているファイルをコピーし、ビルドを続けました。この時点では、おそらく他のリソースの場所を特定しようとしている場所から外れたパッケージが原因で、他のエラーが発生しました。私は私のVSソリューションからプロジェクトを削除した問題を解決するために

は、解決に一つのフォルダや再追加したプロジェクトをプロジェクトファイルを移動しました。これにより、すべてのパッケージ参照とビルドに正しい相対パスが作成されました。私の唯一の関心事は、私が知らずに壊したプロジェクトの他の秘密の依存関係かもしれないということです。時間は、本当に今NuGetの魔法のファンではないと言います。ファイル内の不正な相対パスを持つ実際の行をどこかで見つけることができたら、私はそれを手動で修正することができました。

関連する問題