2012-03-15 8 views
4

私のコンピュータでMsbuildは正常に動作しますが、bamboo/msbuildを使ってプロジェクトをビルドしようとすると何らかの理由で.net 4.0が参照されます。Msbuild 4.0は、プロジェクトが3.5をターゲットにしているときにSystem.Core 4.0を参照していますか?

DB\DbExt.cs(95,42): error CS0433: The type 'System.Func<T1,T2,TResult>' exists in both 'c:\Windows\Microsoft.NET\Framework64\v4.0.30319\mscorlib.dll' and 'c:\Windows\assembly\GAC_MSIL\System.Core\3.5.0.0__b77a5c561934e089\System.Core.dll' [C:\Users\Administrator\bamboo-home\xml-data\build-dir\GITEXP-GITEXPORT-JOB1\NotMissing\NotMissing\NotMissing.csproj] 

私は新しいコンパイラ機能(デフォルトパラメータなど)を使用していますので、MSBuildの4.0を使用する必要があります。何らかの理由でSystem.Core 4.0が3.5をターゲットにしていても参照されています。

+0

これは唯一のプロジェクトであり、4.0アセンブリを参照していません。また、msbuild 4.0を使用して竹の外側を細かく構築します。 – Will

+0

https://answers.atlassian.com/のようなベンダーのサポートチャネルを使用してください。 –

答えて

6

これは既知の問題です。 LinkLinkLinkLink

私はプロジェクトからSystem.Coreアセンブリ参照を削除することによってそれを修正、私は(それは長い時間前でした)と思います。

したり、プロジェクトをこのように変更しよう:

<Reference Include="System.Core"> 
    <RequiredTargetFramework>3.5</RequiredTargetFramework> 
</Reference> 
+0

.net 3.5クライアントプロファイルが見つかりません。だから、何らかの理由でデフォルトの3.5の代わりに、4.0にデフォルト設定されています。少なくともそれは私の推測です。私はクライアントのプロファイルをインストールしようとしましたが、まだそれを見つけることができません。 – Will

+0

別のオプションは、.NET 4.5をインストールし、4.0の代わりにMSBuild 4.5を使用することです。 4.5で修正する必要があります。 – Ludwo

+0

ありがとう、リファレンス要素にrequireを追加して固定しました。 – Will

-1

プロジェクトのプロパティの参照パス]タブに記載されたものがないことを確認してください。ここでdllの参照パスを言いたい場合は、追加するdllが上記のパスに1回だけ存在することを確認する必要があります。 Empty Reference Paths

関連する問題