@sanex3339

Как убрать (или хотя бы локализовать) ошибку Error: ENOENT: no such file or directory `some_file_name.ts___jb_tmp___`?

Проблема: в текущем проекте при запущенных вотчерах в 50% случаев изменение файлы выкидывает ошибку:
ENOENT: no such file or directory, stat '/home/username/PhpstormProjects/js/bd/src/ts/classes/bd/file_name.ts___jb_tmp___'
at Error (native)


Что это за постфикс `___jb_tmp___` я без понятия. Гугл ничего не находит. Поиск по node_modules - тоже.
Как вообще определить - в сторону какого плагина копать?

Зависимости:
"dependencies": {
    "gulp": "^3.9.1",
    "gulp-include-source": "0.0.5",
    "gulp-livereload": "^3.8.1",
    "gulp-minify": "0.0.10",
    "gulp-plumber": "^1.1.0",
    "gulp-sourcemaps": "^1.6.0",
    "gulp-watch": "^4.3.5",
    "ts-loader": "^0.8.2",
    "typescript-extends": "^1.0.1"
  },
  "devDependencies": {
    "browser-sync": "^2.12.3",
    "typescript": "^1.9.0-dev.20160422",
    "webpack": "^2.1.0-beta.6",
    "webpack-stream": "^3.2.0"
  }


Таск JS в gulp:
gulp.task('js', function() {
   gulp.src('src/ts/bd.ts')
       .pipe(plumber())
       .pipe(sourcemaps.init())
       .pipe(webpack({
           debug: true,
           devtool: 'source-map',
           module: {
               loaders: [
                   {
                       test: /\.ts$/,
                       loader: 'ts-loader',
                       exclude: /node_modules/
                   }
               ]
           },
           output: {
               filename: 'bd.js',
               library: "LibraryName",
               libraryTarget: "var"
           },
           plugins: [
               new ProvidePlugin({
                   __extends: 'typescript-extends'
               })
           ],
           resolve: {
               extensions: ['', '.ts', '.webpack.js', '.web.js', '.js'],
               modulesDirectories: ['node_modules', '.']
           }
       }))
       .pipe(minify())
       .pipe(sourcemaps.write())
       .pipe(gulp.dest('dist/js/'))
       .pipe(reload({stream: true}));
});


Вотчеры и сервер в Gulp
var config = {
    server: {
        baseDir: "./dist"
    },
    host: 'localhost',
    port: 9005,
    ui: {
        port: 8080,
        weinre: {
            port: 9090
        }
    },
    logPrefix: "prefix"
};

gulp.task('watch', function(){
    watch('src/ts/**/**', function(event, cb) {
        gulp.start('js');
    });
    watch('src/*.html', function(event, cb) {
        gulp.start('html');
    });
});

gulp.task('webserver', function () {
    browserSync(config);
});
  • Вопрос задан
  • 5355 просмотров
Решения вопроса 1
k12th
@k12th
console.log(`You're pulling my leg, right?`);
jb_tmp, это, очевидно, JetBrains temp-файл:) А проблема в том, что у вас вотчер пытается смотреть за всеми файлами:
watch('src/ts/**/**', function(event, cb) {
Исправьте путь на 'src/ts/**/*.ts', должно помочь.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы