在VS2015中使用Gulp编译打字稿时抛出UNKOWN错误

时间:2016-01-13 10:12:36

标签: javascript typescript visual-studio-2015 gulp task-runner-explorer

我在新的笔记本电脑上安装了Visual Studio 2015(没有其他早期版本),并且已经下载了我们的MVC网络应用程序的源代码。我们有一个gulp文件,其中包含编译less和typescript的任务。

运行此任务时......

  

cmd.exe / c gulp -b“C:\ Code \ Trunk \ MyProj \ MyProj.Web”--color --gulpfile“C:\ Code \ Trunk \ MyProj \ MyProj.Web \ Gulpfile.js”typescript

...我收到以下错误:

[09:43:16] Using gulpfile C:\Code\Trunk\MyProj\MyProj.Web\Gulpfile.js
[09:43:16] Starting 'typescript'...
[09:43:34] Plumber found unhandled error:
 Error: UNKNOWN, open 'C:\Code\Trunk\MyProj\MyProj.Web\app\allergy\main.js'
Process terminated with code 0.

以下是gulp文件中的任务(为简洁起见,删除了其他部分):

var gulp = require("gulp");
var plumber = require("gulp-plumber");
var sourcemaps = require("gulp-sourcemaps");
var typescript = require("gulp-typescript");
var merge = require("merge2");

var paths = {
    typescript: {
        globpatterns: {
            all: "./Scripts/**/*.ts",
            excludedefinitions: "!./Scripts/**/*.d.ts"
        }
    }
};

gulp.task("typescript", function () {
    var result = gulp.src([
            paths.typescript.globpatterns.all,
            paths.typescript.globpatterns.excludedefinitions
        ])
        .pipe(plumber())
        .pipe(sourcemaps.init())
        .pipe(typescript({
            removeComments: true,
            declarationFiles: false,
            noImplicitAny: false,
            noEmitOnError: true,
            module: "amd",
            target: "ES5"
        }));

    return merge([
        result.js.pipe(gulp.dest("./")),
        result.pipe(sourcemaps.write()).pipe(gulp.dest("./"))
    ]);
});
  • 我的同事与我的设置相同,没有错误。
  • 在项目文件(<TypeScriptToolsVersion>1.0</TypeScriptToolsVersion>)中将Typescript设置为1.0版,我现在无法更改。我想知道原因是否因为我的机器上没有安装此版本但我的同事也没有。 C:\Program Files (x86)\Microsoft SDKs\TypeScript只有1.7
  • 的文件夹
  • 我注意到如果我在合并块中移除了2行中的任何一行,则任务成功完成。
  • 每次错误消息中都是一个不同的.js文件

我搜索了网络,看看UNKNOWN错误甚至意味着什么,但找不到任何明显/有用的东西。任何人都知道如何解决此错误?或者我如何找出它被抛出的原因?

编辑2016年1月20日

所以,我这个错误持续了大约一个星期......现在它已经停止了。我也没有对我的开发环境做任何改变。我想把这个问题保持开放,因为我很好奇为什么会这样。

0 个答案:

没有答案