2012-06-16 19 views
28

VS2010プロジェクトをVS2012にアップグレードしたばかりで、依存プロジェクトが必要に応じて構築されないという問題が発生しました。Visual Studio 2012でビルドに依存しないプロジェクト

  • ライブラリA
  • ConsoleApp 1

ConsoleApp 1参照ライブラリA.私はクラスのメソッドのシグネチャを変更する場合:たとえば、私は私の溶液中で、次のプロジェクトを持っていると言いますライブラリAを実行してConsoleApp 1を実行すると、ConsoleApp 1の実行によってライブラリAがビルドされなかったため、ConsoleApp 1が自分の変更を認識しないためにコンパイラエラーが発生します。

手動でライブラリAを作成してから、手動でConsoleApp 1をビルドすると正常に動作します。しかし、私はConsoleApp 1を実行すると、起動する前に依存プロジェクトを再構築する必要があると思います。

設定が間違っている可能性がありますか?これはVS2012のバグですか?

+0

それはバグであってもよいし、VS 2012 RCの段階にとどまっている原因...しかし確実に伝えることができない...プロジェクトを右クリック(プロジェクトの依存関係に表示されている何 – walther

+1

、プロジェクトの依存関係を選択する)? –

+0

プロジェクトの依存関係が正しいように見えます。例えば。 ConsoleApp 1の場合、ライブラリAのチェックボックスがチェックされます。問題は私が思ったよりも悪いかもしれません。私がConsoleApp 1のクラスに直接変更してからF5/Runを押すと、ConsoleApp 1は再構築しないで、最後に構築したバージョンを変更せずに実行します。 – user1438940

答えて

16

referencesプロジェクトを削除してもう一度追加してみてください(パス:References ->(右クリック)Add reference -> Solution -> Project)。もう一度試す前にSave All。これが私が解決した方法です。

+3

これは問題ではありませんでしたが、ソリューションからすべてのプロジェクトを削除し、.csprojファイルを編集してプロジェクト参照を削除し、各プロジェクトをソリューションに追加して参照を再作成しました。今すぐうまくいくように見える! – user1438940

+2

私は昨夜/今朝同じ問題を抱えていました。だから私はすべてのプロジェクトをソリューションから削除し、すべてを元に戻し、各段階でプロジェクト参照を追加して構築し、すべてがうまくいった。 –

+0

上記の2つのコメントは私のために働いた。ソリューションからすべてのプロジェクトを削除し、手動で追加します(私が行ったようにビルド)。勝者!!! – Ryan

45

症状は、those I experienced a while agoとよく似ています。現在のactiveソリューションconfigurationとアクティブソリューションプラットフォームBuild->Configuration Managerでプロジェクトを構築するようにしてください。

+0

これは私のためにそれをしました。リリースモードでエラーが発生し、各プロジェクトのチェックボックスがオフになっていました。 +1 –

+2

解決策はVisual Studio 2010でも動作します – Entrodus

+1

ニース。私は 'Any CPU'を選択していて何も働かなかった。私はアクティブなソリューション構成を「Mixed Platforms」に切り替えたばかりで、現在は依存プロジェクトが再構築されています。 –

18

これは、ソリューションの.suoファイルがロックされ、Visual Studioがそのファイルに書き込めなくなった場合に発生します。この問題のもう一つの症状は、あなたがそれを開いたときにソリューションの隣に作成された一時ファイルが表示されることです。 Visual Studioを終了し、作業領域内のすべての* .suoファイルを削除してみてください。その後、Visual Studioを再度開き、すべてを再構築します。ソリューションを手動で再構築する必要はありません。これは、今日の私の同僚に起こったように、ロックされた.suoによって引き起こされたときに問題を解決します。

原因は、Visual Studioがまだ開かれている間にノートパソコンをシャットダウンしたように見えます。たぶん、Windowsのシャットダウンが正常に完了しなかったのでしょうか? .suoがどうやってロックされたかだけを推測することができます。

+0

私の場合、.suoファイルがロックされているかどうかは実際には確認しませんでした。ビルドが成功した後にビルドエラーが発生し、リネームリファクタリングを実行するときにVisual Studioがコードを誤っているのを見ているだけです。私はソリューションの隣にある2つの.suoファイルのうち大きい方のファイルを削除しました(.v12.suoでした)。 – superjos

+0

これは私の問題を解決しました –

6

私は上記のすべてのソリューションを試しましたが、それは私の問題を解決しませんでした。私が見つけたのはConfigurationManagerActive configurationがMain(スタートアップ)プロジェクトだけをビルドするように設定されているためです。 Build>ConfigurationManager

ゴーこれはAsp.Netフォーラムhereで同様の問題であり、これはMSDN の詳細であるあなたが構築したいすべてのプロジェクトが 下のスクリーンショットのようにチェックされていることを確認してください。それは私がこれらの設定を変更したことがないし、それが先週適切に enter image description here

6

を働いていたbcoz私は同様の問題が発生しました、weiredたが、溶液(またはprobelem)が「のみ起動を構築Tools > Options... > Projects and Solutions > Build and RunBuild and Run設定しましたプロジェクトと依存関係を確認しました。スクリーンショットは私の現在の解決策を示しています。ソリューションエクスプローラで

Visual Studio 2012 Options

+0

私にとって、ビジュアルスタジオは非常に混乱していましたので、このボックスのチェックを外して再構築し、すべてのエラーが消えました。私は箱を再チェックして再建し、すべてが再び働いているようだ。ありがとう。例えば – joshboley

0

右クリックして解決し、「ソリューションのクリーン」をクリックしてください。

0

参照先のプロジェクトが参照先のプロジェクトと同じかそれ以上の.NETフレームワークバージョンであることを確認してください。

+1

..... – ggdx

1

私にとっては、プロジェクトを右クリックして問題を解決しました。依存関係の構築>プロジェクトの依存関係。次に、各プロジェクトの順序を手動で設定します。あなたが多くのプロジェクトを持っているなら、非常に苦しいです。

enter image description here

関連する問題