Задать вопрос
@tory_kuzya

Не работает Gulp?

После переноса проекта с рабочего пк на домашний и создания нового проекта перестал реагировать gulp? т.е. команда gulp <имя_таска> приводит к следующей ошибке:
C:\Users\КузяАсер\Downloads\OpenServer\domains\potokblue>gulp dev
[14:21:44] Using gulpfile ~\Downloads\OpenServer\domains\potokblue\gulpfile.js
C:\Users\КузяАсер\AppData\Roaming\npm\node_modules\gulp\bin\gulp.js:129
    gulpInst.start.apply(gulpInst, toRun);
                  ^

TypeError: Cannot read property 'apply' of undefined
    at C:\Users\КузяАсер\AppData\Roaming\npm\node_modules\gulp\bin\gulp.js:129:19
    at _combinedTickCallback (internal/process/next_tick.js:73:7)
    at process._tickCallback (internal/process/next_tick.js:104:9)
    at Module.runMain (module.js:606:11)
    at run (bootstrap_node.js:389:7)
    at startup (bootstrap_node.js:149:9)
    at bootstrap_node.js:504:3

Естественно в системе установлен Node.js, npm, gulp (глобально и локально) + все используемые в gulpfile.js плагины.
Вот gulpfile.js:
'use strict';

const gulp = require('gulp');
const scss = require('gulp-scss');
const less = require('gulp-less');
const sourcemaps = require('gulp-sourcemaps');
const debug = require('gulp-debug');
const gulpIf = require('gulp-if');
const del = require('del');
const browserSync = require('browser-sync').create();
const notify = require('gulp-notify');
const cssnano = require('gulp-cssnano'); // Подключаем пакет для минификации CSS
const csso = require('gulp-csso');  //для минификации CSS
//const uncss = require('gulp-uncss');    //для оптимизации CSS файлов, анализирует HTML код и находит все неиспользуемые и продублированные стили
const concat = require('gulp-concat'); // Подключаем gulp-concat (для конкатенации файлов)
const combiner = require('stream-combiner2').obj;
const uglify = require('gulp-uglify');

const isDevelopment = !process.env.NODE_ENV || process.env.NODE_ENV == 'development';

gulp.task('styles', function() {

    return combiner(
        gulp.src(['frontend/styles/fonts.css','frontend/styles/main2.css','frontend/styles/main.css']),
        gulpIf(isDevelopment, sourcemaps.init()),
        //less(),
        //cssnano(),    //минимизируем
        concat('main.min.css'), // Собираем их в кучу в новом файле main.min.css
        // uncss({
        //     html: ['index.html']
        // }),
        csso({
            restructure: false,
            sourceMap: true,
            debug: true
        }),
        gulpIf(isDevelopment, sourcemaps.write()),
        gulp.dest('public/css')
    ).on('error', notify.onError());

});

gulp.task('librarys', function() {

    return combiner(
        gulp.src(['frontend/styles/lib/*.*']),
        gulpIf(isDevelopment, sourcemaps.init()),
        cssnano(),    //минимизируем
        concat('lib.min.css'), // Собираем их в кучу в новом файле lib.min.js
        gulpIf(isDevelopment, sourcemaps.write()),
        gulp.dest('public/css')
    ).on('error', notify.onError());

});

gulp.task('scripts', function() {

    return combiner(
        gulp.src(['frontend/assets/js/lib/*.js']),
        gulpIf(isDevelopment, sourcemaps.init()),
        uglify(),  //минимизируем
        concat('lib.min.js'), // Собираем их в кучу в новом файле lib.min.js
        gulpIf(isDevelopment, sourcemaps.write()),
        gulp.dest('public/js')
    ).on('error', notify.onError());

});

gulp.task('clean', function() {
    return del('public');
});

gulp.task('assets', function() {
    return gulp.src('frontend/assets/**', {since: gulp.lastRun('assets')})
        .pipe(debug({title: 'assets'}))
        .pipe(gulp.dest('public'));
});


gulp.task('build', gulp.series(
    'clean',
    gulp.parallel('styles', 'librarys', 'assets', 'scripts'))
);

gulp.task('watch', function() {
    gulp.watch('frontend/styles/*.*', gulp.series('styles'));

    gulp.watch('frontend/styles/lib/*.*', gulp.series('librarys'));

    gulp.watch('frontend/assets/**/*.*', gulp.series('assets'));
});

gulp.task('serve', function() {
    browserSync.init({
        server: 'public'
    });

    browserSync.watch('public/**/*.*').on('change', browserSync.reload);
});

gulp.task('dev',
    gulp.series('build', gulp.parallel('watch', 'serve'))
);


Вот package.json:
{
  "name": "p",
  "version": "1.0.0",
  "description": "C:\\OpenServer\\domains\\galp4>gulp -v [08:46:51] CLI version 3.9.1 [08:46:51] Local version 4.0.0-alpha.2",
  "main": "gulpfile.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "del": "^2.2.0",
    "gulp": "github:gulpjs/gulp#4.0",
    "gulp-babel": "^6.1.1",
    "gulp-cached": "^1.1.0",
    "gulp-concat": "^2.6.0",
    "gulp-cssnano": "^2.1.0",
    "gulp-debug": "^2.1.2",
    "gulp-header": "^1.7.1",
    "gulp-if": "^2.0.0",
    "gulp-image-resize": "^0.7.1",
    "gulp-imagemin": "^2.4.0",
    "gulp-load-plugins": "^1.2.0",
    "gulp-newer": "^1.1.0",
    "gulp-notify": "^2.2.0",
    "gulp-rename": "^1.2.2",
    "gulp-sourcemaps": "^1.6.0",
    "gulp-stylus": "^2.2.0",
    "gulp-uglify": "^1.5.1",
    "gulp-useref": "^3.0.4",
    "gulplog": "^1.0.0",
    "lazypipe": "^1.0.1",
    "stylus": "^0.53.0",
    "through2": "^2.0.0",
    "gulp-csso": "^3.0.0"
  },
  "devDependencies": {
    "babel-preset-es2015": "^6.3.13",
    "browser-sync": "^2.11.1",
    "gulp-babel": "^6.1.1",
    "gulp-concat": "^2.6.0",
    "gulp-debug": "^2.1.2",
    "gulp-if": "^2.0.0",
    "gulp-notify": "^2.2.0",
    "gulp-plumber": "^1.0.1",
    "gulp-sourcemaps": "^1.6.0",
    "gulp-stylus": "^2.2.0",
    "multipipe": "^0.3.0",
    "stream-combiner2": "^1.1.1",
    "stylus": "^0.53.0",
    "through2": "^2.0.0"
  }
}


Может эта проблема от того, что не все файлы установленные и используемые в gulpfile.js отображены в зависимостях package.json и наоборот, указанные зависимости не используются в gulpfile?
  • Вопрос задан
  • 5470 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 1
Пригласить эксперта
Ответы на вопрос 1
@architawr
"Ok, Google" и все твои проблемы решены
Проблема из-за кирилических символов в пути к gulpfile.js (Имя пользователя) C:\Users\КузяАсер\Downloads\OpenServer\domains\potokblue
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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