2011-11-05 33 views
11

私たちには数多くのプロジェクトがあり、それぞれがフォルダ構造の深いところに住んでいます。プロジェクトの1つのセットが別のフォルダ内のプロジェクトを参照する必要がある場合、VS内の相対パスが長すぎるため、参照が失敗する可能性があります。Visual Studioとプロジェクト参照のパスの最大長

C:それは別のプロジェクトを参照\ folderA \ folder1の\フォルダ2 ... \ folderN \ myProject1.csproj

C:

たとえば、プロジェクト1になります\ folderB \ folder1 \ folder2 ... \ folderN \ myProject2.csproj

参照へのHintPathは、... \ folderB \ folder1 \ folder2のように相対パスとして保存されます... \ folderN \ myProject2.csproj

VSがソリューションを読み込むときに、VSが構築する絶対パスにパスが256文字を超えるような多数の../が含まれているため、参照が解決できません。そしてビルドは失敗します。

csprojを編集して絶対パスを入力することで修正しました。これはまったくばかりです。

これに最適な解決策は何ですか?

+3

なぜ投票が遅れましたか?これは正当な質問です。 –

答えて

2

短い回答 - それをしないと傷つくことはありません。階層構造を深く考えずに、関連するプロジェクトを近づけるようにします。

MSBuildのは、アプリケーションおよびCLRを管理している約256文字のパス/ファイル名の長さに制限はあり...プロジェクト名の長さを推奨

+0

はい、フォルダの深さを減らすことができます。私はこれをテストします。すべてのプロジェクト成果物をSVNに保存します。これは、* .slnファイルを作成する前に実際のソフトウェアが約4レベル下がっていることを意味します。しかし全体的には、これは多くの多くのプロジェクトの変更を必要とするでしょう。 –

関連する問題