2011-08-02 10 views
3

2つのプロジェクトの依存関係を持つプロジェクトがあります.2つの依存プロジェクトの出力(dll)を別のフォルダにスローしたいのですが、作業。以下は私が持っているものですが、何か間違っていますか?依存関係プロジェクトの出力を別のフォルダにコピーする

<ItemGroup> 
    <ProjectReference Include="..\..\a\a.csproj"> 
    <Project>{xxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}</Project> 
    <Name>Client</Name> 
    </ProjectReference> 
    <ProjectReference Include="..\..\b\b.csproj"> 
    <Project>{yyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy}</Project> 
    <Name>Server</Name> 
    </ProjectReference> 
</ItemGroup> 
<Target Name="BuildOtherProjects"> 
    <MSBuild Projects="@(ProjectReference)" Targets="Build"> 
    <Output TaskParameter="TargetOutputs" ItemName="DependentAssemblies" /> 
    </MSBuild> 
    <Copy SourceFiles="@(DependentAssemblies)" DestinationFolder="$(OtherBuildLocation)\Build\Output" SkipUnchangedFiles="true" /> 
</Target> 
+0

これは、ProjectReferenceのためのファンキーな構文です。実際にプロジェクトをビルドしていますか? – Jonesie

答えて

0

まず、どの時点で失敗していますか?重要度= "高"に設定されたいくつかのメッセージタスクを使って、デバッグを試してみてください。最初のチェックは、MSBuildタスクの後、DependentAssemblies ItemGroupに実際に何が入っているかということです。

あなたは私はあなたががやろうとしている考える何をやっている場合、つまり、1つのディレクトリにすべての依存関係を取得するには、おそらく展開のために、あなたはその代わりに、すべてのプロジェクトの出力を有すると考えられています同じディレクトリですか? OutDirとOutputPathは、使用できる2つのプロパティです。

関連する問題