gulp系统找不到指定的路径

gulp system cannot find the path specified

你好,我有一个使用 gulp 的项目,尽管 gulpfile.js 没有被更改,但突然停止工作。

我的输出是

cmd.exe /c gulp --tasks-simple 系统找不到指定的路径。

gulpfile.js

/// <binding ProjectOpened='watchTS' />
var gulp = require('gulp');
var less = require('gulp-less'),
    path = require('path'),
    rename = require('gulp-rename'),
    del = require('del'),
    ts = require('gulp-typescript'),
    sourcemaps = require('gulp-sourcemaps'),
    concat = require('gulp-concat'),
    uglify = require('gulp-uglify'),
    tslint = require('gulp-tslint'),
    sloc = require('gulp-sloc'),
    debug = require('gulp-debug'),
    typedoc = require('gulp-typedoc');
    
var lib = './lib/';

var tsProject = ts.createProject('tsconfig.json');

gulp.task('init',function(){
    del.sync('./lib/');
    gulp.src([
        './node_modules/jquery/dist/jquery.min.js',
        './node_modules/d3/d3.min.js',
        './node_modules/angular/angular.min.js',
        './node_modules/n3-charts/build/LineChart.min.js',
        './node_modules/angular-route/angular-route.min.js',
        './node_modules/floatthead/dist/jquery.floatThead.min.js',
        './node_modules/angular-google-chart/ng-google-chart.min.js',
        './node_modules/angular-ui-bootstrap/dist/ui-bootstrap-tpls.js'
     ])
    .pipe(concat('lib.js'))
    .pipe(gulp.dest('lib'));

    gulp.src([
        './node_modules/bootstrap/dist/css/bootstrap.css',
        './node_modules/n3-charts/build/LineChart.min.css'
    ])
    .pipe(gulp.dest('lib'))
});

gulp.task('slocTS', function () {
    return gulp.src(['FrontEnd/**/*.ts'])
    //.pipe(debug())
    .pipe(sloc({ tolerant: true }))
})

gulp.task('slocJS', function () {
    return gulp.src(['Scripts/**/*.js'])
    //.pipe(debug())
    .pipe(sloc())
})

/** Builds out documentation for our enviroment on the typescript side*/
gulp.task('buildDocs', function () {
    return gulp.src(['FrontEnd/**/*.ts'])
        .pipe(typedoc({
            target: 'es5',
            out: 'FrontEnd/docs/',
            mode: 'file'
        }));
})

gulp.task('buildTSLogin', function () {
    return gulp.src(['FrontEnd/**/*.ts', '!FrontEnd/ApplicationStartup.ts'])
    .pipe(tslint())
    .pipe(sourcemaps.init())
    .pipe(ts(tsProject))
    .pipe(concat('loginApp.js'))
    .pipe(sourcemaps.write())
    .pipe(gulp.dest('lib'));
});

gulp.task('buildTS', function () {
    return gulp.src(['FrontEnd/ApplicationStartup.ts', 'FrontEnd/**/*.ts'])
    .pipe(tslint())
    .pipe(tslint.report('verbose', {
        emitError: false
    }))
    .pipe(sourcemaps.init())
    .pipe(ts(tsProject))
    .pipe(concat('app.js'))
    /*.pipe(uglify({
        mangle:true
    }))*/
    .pipe(sourcemaps.write())
    .pipe(gulp.dest('lib'));
});

gulp.task('buildProductionTSLogin', function () {
    return gulp.src(['FrontEnd/**/*.ts', '!FrontEnd/ApplicationStartup.ts'])
    .pipe(ts(tsProject))
    .pipe(concat('loginApp.js'))
    .pipe(uglify({
        mangle: true
    }))
    .pipe(gulp.dest('lib'));
});

gulp.task('buildProductionTS', function () {
    return gulp.src(['FrontEnd/ApplicationStartup.ts', 'FrontEnd/**/*.ts'])
    /*.pipe(tslint())
    .pipe(tslint.report('verbose', {
        emitError: false
    }))
    .pipe(sourcemaps.init())*/
    .pipe(ts(tsProject))
    .pipe(concat('app.js'))
    .pipe(uglify({
        mangle: true
    }))
    /*.pipe(sourcemaps.write())*/
    .pipe(gulp.dest('lib'));
});

gulp.task('buildProduction', ['init', 'buildProductionTSLogin'], function () {
    gulp.start('buildProductionTS');
})

gulp.task('watchTS', function () {
    gulp.watch('FrontEnd/**/*.ts', function (event) {
        console.log('File ' + event.path + ' was ' + event.type + ', running tasks...');
        gulp.start('buildTS');
        //gulp.start('buildTSLogin');
    });
})

我的 packages.json 包含

 "devDependencies": {
    "del": "^2.0.1",
    "gulp": "^3.9.1",
    "gulp-concat": "^2.6.0",
    "gulp-debug": "^2.1.2",
    "gulp-less": "^3.0.3",
    "gulp-rename": "^1.2.2",
    "gulp-sloc": "^1.0.4",
    "gulp-sourcemaps": "^1.5.2",
    "gulp-tslint": "^3.6.0",
    "gulp-typedoc": "^1.2.1",
    "gulp-typescript": "^2.14.1",
    "gulp-uglify": "^1.4.0",
    "typescript": "^4.0.2"
  },
  "dependencies": {
    "@types/angular-route": "^1.7.1",
    "@types/angular-ui-bootstrap": "^0.13.46",
    "@types/jquery": "^3.5.1",
    "@uirouter/angularjs": "^1.0.28",
    "angular": "^1.4.5",
    "angular-google-chart": "^0.1.0",
    "angular-route": "^1.4.5",
    "angular-ui-bootstrap": "^2.5.6",
    "bootstrap": "^3.3.5",
    "d3": "^3.5.16",
    "floatthead": "^1.4.5",
    "jquery": "^2.2.4",
    "n3-charts": "^2.0.14"
  }

我继承了这个项目,所以我还没有完全理解它在做什么,但它已经运行了很多年,只是放弃了。

我最近更新了 typescript 并将项目从使用 typings 文件夹更改为使用 @types(我知道 typings 确实过时了,但这就是项目所在的位置)但是项目自更新后一直在运行并停止工作一段时间后。我确实确保安装了所有提到的软件包,并且所有文件都正确地位于 node_modules 文件夹中。此外,该项目内置 visual studio 无错误。

编辑: 在弄乱它之后,我意识到有趣的是,如果我从上面的 cli 转到路径和 运行 gulp 命令,它们会成功 运行.

编辑2: 我把我的头发拉到这个上面。我的任务 运行ner explorer 显示了这个输出。

cmd.exe /c gulp --tasks-simple
The system cannot find the path specified.

cmd.exe /c gulp --tasks-simple
The system cannot find the path specified.

cmd.exe /c gulp --tasks-simple
The system cannot find the path specified.

在花了比我愿意承认调试更多的时间之后,我终于弄明白了。结果是我不得不将我的 $(PATH) 向上移动到外部工具的 visual studio 位置下。我根据这里的答案想通了