簡體   English   中英

如何在 Visual Studio 中重新啟動 Task Runner?

[英]How do I restart the Task Runner within visual studio?

我有一個 gulp 任務將我的 .less 文件轉換為 css。 這可以正常工作,直到 less 文件中出現語法錯誤。 這會導致 gulp 崩潰並且 Task Runner Explorer 停止並且我無法重新啟動它。 我必須卸載/重新加載項目才能更改語法錯誤。

任何想法如何重新啟動任務運行器資源管理器?

我正在使用 Visual Studio 2017,在任務運行器資源管理器中,您可以右鍵單擊我不想運行的任務,然后按運行開始該任務圖片: https : //i.stack.imgur.com/gHYFy .png

可以隨時啟動和重新啟動任務。 非終止任務,如“觀察”任務,可以多次啟動並並行運行,除非終止。 啟動任務的一種方法是在列表中雙擊它。 上下文菜單中還有一個“運行”命令。

帶有“運行”命令的任務上下文菜單

終止任務

我今天也有同樣的問題,但出於其他原因。 顯然,關閉關聯的控制台窗口會終止任務。

Task Runner 提示終止進程

我記得在一些舊版本的 Visual Studio 中,我必須手動打開 Task Runner Explorer,否則任務將無法啟動。

關於語法錯誤

為了避免重新啟動任務的麻煩,請添加某種類型的錯誤處理。 可能有更多解決方案,但我使用了這個 這是一個較短的版本:

const gulp = require('gulp');
const plumber = require('gulp-plumber');
const lessCompiler = require('gulp-less');

const lessFiles = 'Styles/**/*.less';
const compileLessTaskName = 'compile-Less';
gulp.task(compileLessTaskName, function () {
  return gulp.src(lessFiles)
    // Calling plumber at the start of the pipeline. In case of error, this stops
    // the task without killing the whole process.
    .pipe(plumber(function (error) {
      console.log(error.message);
      this.emit('end');
    }))
    .pipe(lessCompiler())
    .pipe(gulp.dest('wwwroot/css'));
});

gulp.task('watch', function (asyncCallback) {
    gulp.watch(lessFiles, [compileLessTaskName]);
    asyncCallback();
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM