构建时出错:无法加载TypeScript.Tasks.CheckFileSystemCaseSensitive任务
我之前碰到过一模一样的问题,给你整理几个实用的排查和解决步骤:
重新安装TypeScript MSBuild包
大概率是包文件下载不完整导致的。你可以先删掉F:_Websites\AfricaAccess\packages\Microsoft.TypeScript.MSBuild.2.7.1这个文件夹,然后重新通过NuGet安装:
要么在NuGet包管理器里搜索Microsoft.TypeScript.MSBuild并选择2.7.1版本安装,要么用命令行:Install-Package Microsoft.TypeScript.MSBuild -Version 2.7.1安装完记得检查
tools/net45/TypeScript.Tasks.dll文件是否存在。检查程序集依赖项
这个dll可能缺少必要的依赖文件。你可以用Dependency Walker这类工具打开TypeScript.Tasks.dll,看看有没有红色标记的缺失依赖。如果有,确保这些依赖文件要么放在同一个目录下,要么已经正确安装到系统里。验证项目中的任务声明
打开你的项目文件(.csproj/.vbproj),找到类似下面的配置段,检查路径是否正确:<UsingTask TaskName="TypeScript.Tasks.CheckFileSystemCaseSensitive" AssemblyFile="$(MSBuildThisFileDirectory)..\tools\net45\TypeScript.Tasks.dll" />可以临时把
$(MSBuildThisFileDirectory)替换成绝对路径测试,看看能不能正常加载任务。尝试升级包版本
2.7.1是比较老的版本了,可能存在兼容性bug。如果项目允许的话,试试升级到更稳定的新版本(比如3.x系列,根据你的项目兼容性选择),新版本大概率修复了这类加载问题。清理项目缓存后重建
有时候缓存文件会搞事情,按下面步骤来:- 右键项目选择「清理」
- 删除项目目录下的
bin和obj文件夹 - 重启Visual Studio
- 重新生成项目
小提示:如果以上都不管用,可以新建一个空项目,安装同版本的TypeScript MSBuild包试试能不能正常构建,这样能快速判断是项目本身的问题,还是包/环境的问题。
内容的提问来源于stack exchange,提问作者Himanshu Sharma

