VS2013自带的Newtonsoft导致的编译异常

重装系统后,安装了最新的VisualStudio2013,

结果发现有些项目死活无法编译通过,一直报错,说“未能找到类型或命名空间名称“abc.model”(是否缺少 using 指令或程序集引用?)”,可是这个dll明明是引用了,而且重装之前也一直是正常的,再显示错误信息里的警告,发现一堆的引用错误,一共37个,列举前面几个大致如下:

警告	1	未能解析主引用“abc.model”,因为它对程序集“Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed”具有间接依赖关系,而该程序集是针对“.NETFramework,Version=v4.0,Profile=Client”框架生成的。该框架版本高于当前目标框架“.NETFramework,Version=v3.5”。	ConsoleApplication1
警告	2	未能解析主引用“abc.model”,因为它对 .NET Framework 程序集“mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”具有间接依赖关系,而该程序集的版本为“4.0.0.0”,高于当前目标框架中的版本“2.0.0.0”。	ConsoleApplication1
警告	3	未能解析主引用“abc.model”,因为它对 .NET Framework 程序集“System.Core, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”具有间接依赖关系,而该程序集的版本为“4.0.0.0”,高于当前目标框架中的版本“3.5.0.0”。	ConsoleApplication1
警告	4	未能解析主引用“abc.model”,因为它对 .NET Framework 程序集“System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”具有间接依赖关系,而该程序集的版本为“4.0.0.0”,高于当前目标框架中的版本“2.0.0.0”。	ConsoleApplication1
警告	5	未能解析主引用“abc.model”,因为它对 .NET Framework 程序集“System.Xml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”具有间接依赖关系,而该程序集的版本为“4.0.0.0”,高于当前目标框架中的版本“2.0.0.0”。	ConsoleApplication1

尝试重新引用dll,编译,失败;

尝试重新加载项目,失败;

尝试重启VisualStudio,失败;

尝试重启电脑,还是失败

最后尝试新建一个项目,只引用abc.model这一个dll,编译,还是失败

然后把abc.model项目加入,并只引用这个项目,编译,通过了;

打开abc.model生成文件所在的Debug目录,把abc.model引用的所有dll都删除,只保留abc.model.dll,编译,失败;

终于,尝试一个个删除abc.model引用的dll,尝试定位问题,果然发现删除Newtonsoft.Json后,编译才失败(真笨啊,一开始从错误警告提示里第一个,就该知道是这个问题了)

最后猜想,是不是因为系统目录下存在这个dll的Framework4.0版本导致的,然后在系统目录下搜索Newtonsoft.dll,果然查找到了:

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Blend\Newtonsoft.Json.dll

把这个文件删除后,前面的异常全部消失了。

排除步骤比较原始,比较奇怪的是,这个dll又没有加入GAC,为什么会去使用这个目录下的Newtonsoft.Json.dll,而不是提示未找到Newtonsoft.Json.dll?

有知道的朋友,麻烦告知。

时间: 2024-10-08 14:23:48

VS2013自带的Newtonsoft导致的编译异常的相关文章

【译】Gradle 的依赖关系处理不当,可能导致你编译异常

文章 | Ashesh Bharadwaj 翻译 | 承香墨影 授权 承香墨影 翻译.编辑并发布 在 Android Studio 中,Gradle 构建过程对于开发者来说,很大程度上是抽象的.作为一个新的 Android 开发者,我们第一次遇到 Gradle 通常是在 build.gradle 文件中添加一个远程依赖项. 让我们看看如何阅读 Gradle 依赖关系树,并解决与依赖关系有关的问题. 这是我工作中管理的一个项目,我想将 targetVersion 升级到 27,我也在 Gradle

sqlserver 存储过程中使用临时表到底会不会导致重编译

曾经在网络上看到过,SqlServer的存储过程中使用临时表,会导致执行计划无法重用, 运行时候会导致重编译的这么一个说法,自己私底下去做测试的时候,根据profile的跟踪结果, 如果不是统计信息变更导致导致的重编译,单单是使用临时表,并不会导致重编译, 但是对于一些特殊的情况,又确实会出现重编译的, 为了弄清楚这个问题,查阅了大量的资料,才把这个问题弄清楚,这里特意记录下来,希望武断地认为存储过程中使用了临时表就会导致重编译的这个观点得到纠正. 首先进行下面的测试,我们知道,导致临时表重编译

编译速度过慢问题 图片资源过多 视频资源过多导致的编译过慢问题

我的博客地址欢迎阅读和指正: http://www.cnblogs.com/yyxios/ https://github.com/iOSSinger 公司项目其实也不大,几千行代码,但是每次做个小小的改动,都要重新编译,轻则5,6分钟重则十几分钟,原因是里面需要显示3D效果,因此项目里面放了许多图片资源和视频资源,导致每次编译速度都很慢; 解决办法: 在调试阶段下链接电脑本地资源,比如放到桌面某个文件夹里,从而不需要编译,也能看到效果,只是用到的时候才会从本地加载,缺点就是3D效果略有卡顿;然而

mac下cocos2dx(带jsoncpp第三方库)编译为android项目心得

在mac下好不容写完了游戏,本以为轻轻松松就能编译为android项目,想不到弄了将近1整天才将问题解决 首先不带jsoncpp的编译方式请参考:http://www.bold-it.com/ios/cocos2d-x-box2d-iosandroid-hybrid-tutorial/ 带jsoncpp第三方库的参考了http://blog.csdn.net/sniffer12345/article/details/7336732,对作者表示感谢. 我使用的是正常的jsoncpp版本,在json

VS2013自带的Browser Link功能引发浏览localhost网站时不停的轮询

浏览localhost网站时候不管你打开那个页面它都会不停的轮询.据悉这是VS2013自带的Browser Link功能,里面用到SignalR机制 什么是Browser Link功能,什么是SignalR机制大家可以没事去百度了解一下. Browser Link功能讲解地址:http://www.cxyclub.cn/n/40768/ 此处主要是阐述禁用这个功能:

VS2013自带报表+打印功能

经过了VB版机房收费系统的学习,相信现在说起报表,我们已经不再觉得陌生.VB打印报表的功能是通过引用第三方控件来实现的,而相对的VS就在VB的基础上完善了这一功能,VS自带报表控件和打印功能,这样就给我们这些编程者带来了很大的方便.下面就将我做程序的一些小经历来跟大家一起分享一下. 1,我们右击U层所在文件夹添加"新建项". 2,在弹出的的添加新建项窗口中找到"reporting",在右面的内容窗口中选中"报表"选项,设置报表的名称. 3,点击确

让vs2013自带的IISExpress支持apk文件下载

使用vs2013作为android的服务器端开发时,总是会碰到需要自动更新的功能,VS2013自带IIS Express,想要下载apk文件,就需要添加MIME映射.没有图形界面,只能命令行.进入C:\Program Files(x86)\IIS Express (本机iisexpress安装位置,cd C:\Program Files(x86)\IIS Express)文件夹,输入:appcmd set config /section:staticContent /+[fileExtensio

Android的debug.keystore拒绝访问导致的生成异常及解决方案

构建Android应用程序的时候输出异常:[apkbuilder] keytool 错误: java.io.FileNotFoundException: C:\Users\my\.android\debug.keystore(拒绝访问.)导致BUILD FAILED. 异常原因: Android要求所有的应用程序必须有签名,否则就不会安装该程序.而在我们开发过程中,默认生成和使用debug.keystore(所以平时根本不会注意有这么个玩意),debug.keystore默认有效期为一年,换句话

Xcode 6 删除 DerivedData后,编译异常

一.现象 Xcode 6 编译异常,始终报项目名称目录找不到. ld: file not found: /Users/dxxxDev/Library/Developer/Xcode/DerivedData/xxxx-xxdfasdfasfasdoczqswzexnvbxai/Build/Products/Debug-iphoneos/xxxx.app/xxx clang: error: linker command failed with exit code 1 (use -v to see i