2010-05-19 71 views
2

我已經升級了使用MSBuild 4.0的解決方案。它編譯,但我收到很多警告,例如:解決MSBuild 4.0警告

 
"T:\projects\Castle.Core\buildscripts\Build.proj" (Package target) (1) -> 
"T:\projects\Castle.Core\Castle.Core-vs2008.sln" (Build target) (2:2) -> 
"T:\projects\Castle.Core\src\Castle.DynamicProxy.Tests\Castle.DynamicProxy.Tests-vs2008.csproj" (default target) (3:2) -> 
    D:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(847,9): warning MSB3644: The reference assemblies for framework ".NETFramework,Version=v4.0.30319" were not found. To resolve this, install the SDK or Targeting Pack for this framework version or retarget your application to a version of the framework for which you have the SDK or Targeting Pack installed. Note that assemblies will be resolved from the Global Assembly Cache (GAC) and will be used in place of reference assemblies. Therefore your assembly may not be correctly targeted for the framework you intend. [T:\projects\Castle.Core\src\Castle.DynamicProxy.Tests\Castle.DynamicProxy.Tests-vs2008.csproj] 

如何解決這些警告?它與.NET 4.0 Multitargeting包或SDK有關,但沒有用於.NET 4.0的SDK AFAIK和Multi-Target包不能分開安裝。

任何想法,將不勝感激。

回答

0

您是否試過在打開診斷級別調試('/ v:diag')的MSBuild中查看'ResolveAssemblyReferences'任務的輸出。這應該告訴你構建過程正在搜索哪些目錄以查找dll。儘管如果構建過程找不到它,我有點驚訝IDE沒有在項目中顯示該引用的問題。

There is a .Net Framework SDK,但它也是Windows SDK的一部分。 VS2010附帶的版本是7.0A,最新版本是7.1。如果您已經分別安裝了一個或兩個安裝程序,可能會有安裝程序引入的路徑/引用衝突。

0

Apparently a known issue.

你安裝.NET 4客戶端配置文件或全部?

+0

是的,已經看到,希望有解決方法或什麼的。 – 2010-05-19 12:41:09

+0

問題是,即使在安裝了VS2010 Professional的機器上,我也會收到警告。 – 2010-05-19 12:52:05