在一台服务器上用msbuild编译项目时,出现这样的警告:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets(983,5): warning MSB3644:
未找到框架“.NETFramework,Version=v4.5”的引用程序集。若要解决此问题,请安装此框架版本的 SDK 或 Targeting Pack,或将应用程序的目标重新指向已装有 SDK 或 Targeting Pack 的框架版本。请注意,将从全局程序集缓存(GAC)解析程序集,并将使用这些程序集替换引用程序集。因此,程序集的目标可能未正确指向您所预期的框架。
英文版提示:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Microsoft.Common.targets (983): The reference assemblies for framework ".NETFramework,Version=v4.5" 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.
用Visual Studio 2012 Express打开项目时出现提示:
而服务器上已经安装了.NET Framework 4.5:
这个问题如何解决?
在另一台电脑上用VS2012 Ultimate可以正常打开,编译时也没有这个警告。
在这台有问题的电脑上,VS2012 Express中也看不到.NET Framework 4.5。
1、卸载VS2012 Express,问题依旧。
2、重新.NET framework 4.5,问题依旧。
编译命令贴出来看看,会不会是环境变量的值有问题。
编译命令久经考验,不存在问题
@dudu: 有一次我也是这个问题,我先装的2.0,然后安装的1.0出的问题,注册表里面改了一下就好了。
@不要理我: 但是同样的msbuild命令,target framework改为4.0就没问题
@dudu: 那是应为你4.0的文件系统能找到,你安装了4.5估计注册表里面存的那个记录找不到对应的文件。我就是这个问题之前。
可尝试操作:
1、重新装下.Net4.5;
2、将Framework切换到4.0
1、重新.NET Framework 4.5问题依旧
2、本来在4.0下没问题,现在就是需要升级至4.5
@dudu: 看这截图,像是Server或者XP,会是系统的原因吗?装个旗舰版VS???
@幻天芒:
操作系统是Windows Server 2008 R2,总不能在每台服务器上装个旗舰版VS,估计装了也解决不了问题
@dudu: 如果是先装了Net Framework,然后才装的VS。可能会造成VS识别不到,修复(重装的时候有修复)下VS试试...
你的.NET Framework 4.5是最新的吗?尝试从官方网下载看看http://www.microsoft.com/zh-cn/download/details.aspx?id=30653
刚刚用最新版的修复安装了,问题依旧
@dudu: "The problem is caused by the machine missing the Microsoft .NET Framework 4.5 Multi-Targeting Pack. The Multi-Targeting pack for 4.5 is installed as part of the initial install of VS2012 and is not available as a separate download. If you have the full express image ISO you can find the install package by the name of NetFx45_DTP.msi. You can install it from there. Alternatively you can uninstall VS2012 and then install it again."
网上搜了,安装NetFx45_DTP.msi,重装VS2012
@上帝之城: 应该是NET Framework 4.5 Multi-Targeting Pack引起的,我安装Windows SDK之后问题解决了
啊,杜杜出来问问题了,围观一下!
我也遇到这个问题了,我机器上找不到.net Freamwork 4.5 SDK,那个东西如何安装?求指教
我也遇到过这个问题,搞了我大半天了。。。
.net framework 4.5的windows sdk是这个地址:
https://developer.microsoft.com/en-us/windows/downloads/windows-8-sdk