VS2017任务运行资源管理器未找到任务

时间:2017-04-06 04:36:32

标签: gulp visual-studio-2017

我正在尝试在VS 2017中的MVC核心项目中设置gulp。我有我认为有效的gulpfile.js:

var gulp = require('gulp');
var rimraf = require('rimraf');
var concat = require('gulp-concat');
var cssmin = require('gulp-cssmin');
var uglify = require( 'gulp-uglify' );

var paths = {
    webroot: './wwwroot/',
};

paths.js = paths.webroot + 'js/**/*.js';
paths.minJs = paths.webroot + 'js/**/*.min.js';
paths.css = paths.webroot + 'css/**/*.css';
paths.minCss = paths.webroot + 'css/**/*.min.css';
paths.concatJsDest = paths.webroot + "js/site.min.js";
paths.concatCssDest = paths.webroot + "css/site.min.css";

gulp.task("clean:js", function (cb) {
    rimraf(paths.concatJsDest, cb);
});

gulp.task("clean:css", function (cb) {
    rimraf(paths.concatCssDest, cb);
});

gulp.task( "clean", ["clean:js", "clean:css"] );

但是当我打开Task Runner Explorer时,我收到消息“(找不到任务)”。

我已经检查过以确保所有gulp软件包都是通过npm安装的。我还添加了一个package.json文件。但是仍然没有找到任务。

我做错了什么?

4 个答案:

答案 0 :(得分:18)

显然,您必须在项目中本地安装gulp才能使其与Visual Studio一起正常工作。全局安装不起作用。删除全局副本并在本地安装它解决了这个问题。

答案 1 :(得分:1)

您还需要安装所有依赖项-我的VS Task Runner失败,没有在新安装中出现任何错误消息-我已经在本地安装了gulp,但是gulpfile.js显示了以下必需模块:

var util = require('gulp-util'),
    gulp = require("gulp"),
    concat = require("gulp-concat"),
    cssmin = require("gulp-cssmin"),
    rename = require('gulp-rename'),
    babel = require('gulp-babel'),
    terser = require("gulp-terser")
    //del = require("del"); 
    ;

其中一个失踪了,所以我跑了

npm install gulp-util
npm install gulp-concat
npm install gulp-cssmin
npm install gulp-rename
npm install gulp-babel
npm install gulp-terser

任务运行器显示了我的任务-其中一个模块未正确加载。奇怪的行为是因为gulpfile.js和任务运行程序上周正常工作,唯一的变化是在本地安装了一些不相关的节点模块。

答案 2 :(得分:0)

我遇到了同样的问题,请在运行两个命令后解决此问题。请参考以下过程:

1)右键单击visual-studio中的gulp文件,然后选择“打开命令行> PowerShell”

enter image description here

2)运行命令npm install gulp来安装gulp。 (无论您是否已经全局安装了gulp,都必须在项目中安装gulp,但是在这种情况下,必须在项目中安装gulp)

enter image description here

,然后按Enter。

3)执行命令后,转到Visual Studio中的任务运行器资源管理器,然后按刷新按钮。

enter image description here

按下刷新按钮后,您将在任务运行器下看到所有任务列表。

如果在输出窗口中发现与“缺少模块”有关的任何错误,如下所示:

enter image description here

然后,您必须安装缺少的npm插件,为此,只需运行以下命令(进入powershell): npm install并按Enter。 此命令将安装所有缺少的插件,请参见下图:

enter image description here

然后再次按任务运行器浏览器中的刷新按钮,您将在任务运行器窗口下看到所有的任务任务列表。

希望此解决方案会有所帮助。

答案 3 :(得分:0)

就我而言,我已经安装了gulp(在此之前,Task Runner Explorer在这样的Gulpfile.js下说“无法加载”)

enter image description here

但是我仍然有这样的“找不到任务”

enter image description here

此外,当我要求Visual Studio将bundleconfig.json转换为gulp时,Visual Studio已经告诉我它已经安装了所有必需的节点程序包。但是尽管如此,但是gulp仍然不满意(而且我的Web应用程序根目录下的node_modules目录还很空)。

再次运行“ npm install gulp”,我在命令行中注意到了这一点

enter image description here

,并认为这可能是写权限问题,因为package.json受我项目中的源代码控制。我检查了一下并重新运行了“ npm install gulp”之类的相关软件包,例如gulp-concat,现在我有了一个非常完整的node_modules目录,... gulpfile.js可以工作吗?好吧,不,但是我现在遇到了另一个错误,所以我很确定自己现在正在处理另一个问题:-/

enter image description here

TL; DR;如果您使用的是源代码管理,请确保在开始安装节点软件包之前先将package.json检出。