[解決済み] VS2013の外部ビルドエラー "error MSB4019: The imported project <path> was not found" が発生する。
質問
Visual Studio 2013の内部ではなく、コマンドラインからプロジェクトをビルドしています。Visual Studio 2012から2013にアップグレードしました。プロジェクトはIDE内部で正常にビルドされます。また、私は最初にVS2012を完全にアンインストールし、再起動し、VS2013をインストールしました。私が持っているVisual Studioのバージョンは、2013 Ultimateだけです。
ValidateProjects:
39>path_to_project.csproj(245,3): error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\WebApplications\Microsoft.WebApplication.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.
39>Done Building Project "path_to_project.csproj" (Clean target(s)) -- FAILED.
以下、問題の2行です。
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v12.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
元の2行目はv10.0でしたが、それを手動でv12.0に変更しました。
$(VSToolsPath) は、私が見る限りでは v11.0 (VS2012) フォルダまで伸びていますが、これは明らかにもう存在しません。パスはv12.0にあるべきでした。
C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v12.0\WebApplications\
システム環境変数のテーブルにVSToolsPathを指定してみましたが、外部ビルドユーティリティはv11.0のままです。レジストリを検索してみましたが、何も出てきません。
悲しいかな、使用された正確なコマンドラインを取得する簡単な方法は見当たりません。私はビルドツールを使用しています。
感想は?
解決方法は?
私は同じ問題に直面し、より簡単な解決策を見つけました。
Vs2012 で csproj ファイルに以下を追加したのが原因です。
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
この部分を削除すれば、安全にソリューションを構築することができます。
<ブロッククオート
として
Sieluさんご指摘
.projファイルの先頭が
で
<Project ToolsVersion="12"
そうでなければ、次にその
プロジェクトで、削除されたノードが再び追加されます。
その他、webdeployを使用する必要がある場合や、ビルドサーバーを使用する場合は、上記の解決策は機能しませんが、そのような場合は
VisualStudioVersion
プロパティをビルドスクリプトに追加してください。
msbuild myproject.csproj /p:VisualStudioVersion=12.0
またはビルド定義を編集してください。
関連
-
[解決済み] メンバー '<メンバー名>' にインスタンス参照でアクセスできない
-
[解決済み】WebForms UnobtrusiveValidationModeは、jqueryのScriptResourceMappingを必要とする
-
[解決済み] エンティティタイプ <type> は、現在のコンテキストのモデルの一部ではありません。
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み] 'IEnumerable<SelectListItem>' 型の ViewData アイテムで、キーが国であるものは存在しない。
-
[解決済み] EntityTypeにキーが定義されていないエラー
-
[解決済み】HRESULTからの例外:0x800A03ECエラー
-
[解決済み】「...は'型'であり、与えられたコンテキストでは有効ではありません」を解決するにはどうすればよいですか?(C#)
-
[解決済み】IntPtrとは一体何なのか?
-
[解決済み】別のスレッドがこのオブジェクトを所有しているため、呼び出し側のスレッドはこのオブジェクトにアクセスできない
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】"出力タイプがクラスライブラリのプロジェクトは直接起動できない"
-
[解決済み】GDI+、JPEG画像をMemoryStreamに変換する際にジェネリックエラーが発生しました。
-
[解決済み】プログラム実行中に1秒待つ
-
[解決済み】C#で四捨五入する方法
-
[解決済み] 'SubSonic.Schema .DatabaseColumn' 型のオブジェクトをシリアライズする際に、循環参照が検出されました。
-
[解決済み】プロジェクトビルド時のエラー。エディタでスクリプトにコンパイルエラーがあるため、Playerのビルドにエラーが発生する
-
[解決済み】Unity3DでOnTriggerEnterが動作しない件
-
[解決済み】なぜこのコードはInvalidOperationExceptionを投げるのですか?
-
[解決済み】Unity 「関連するスクリプトを読み込むことができません」「Win32Exception: システムは指定されたファイルを見つけることができません"
-
[解決済み】名前 'ViewBag' が現在のコンテキストに存在しない - Visual Studio 2015