gbent或gulp with netbeans并上传保存

时间:2015-05-27 17:05:34

标签: node.js netbeans upload gruntjs gulp

我已经使用netbeans很长一段时间了。我主要使用php,html,css和javascript主要与wordpress主题和插件开发有关。我在Windows 7下运行Netbeans 8.0.2(以及测试gulp最新的每晚构建)。

我刚刚开始使用grunt和/或gulp(目前为止倾向于后者),目前正在利用autoprefixer - 但我看到这些系统还有其他一百万个潜在好处

虽然有一个showstopper。我沉迷于"保存上传文件"几年前的特点,我不打算这个习惯 - 即时上传是我几乎所有项目工作流程的核心部分......

到目前为止,它只是默默处理我扔的任何东西,并自动上传任何已更改的文件,无论我是否使用netbeans,photoshop,Windows资源管理器或任何其他外部程序来修改或移动文件...但它没有& #39;与最近推出的gulp和grunt支持相得益彰。

如果我运行gulp(或grunt)任务并且文件已更新,netbeans不会检测更改,直到更改的文件被打开(或者如果已打开则标签为)...所以更新的文件不是& #39; t已上传。

如果任务作为手表运行,如果我从CLI或netbeans运行它似乎并不重要。如果它是正常的"任务(即不是手表 - 我对语言还不太熟悉)并通过右键单击Gruntfile.js - >手动运行它。 Grunt Tasks - > whatever然后检测到 的更改...但这并不方便(与我通常的#34;部署程序相比"推送CTRL+S )。到目前为止,这种内置的运行任务方式适用于grunt - 但不是(还没有)gulp。

我看到的唯一选择是:

  • 使用FTP插件进行grunt或gulp - 由于多种原因非常不受欢迎
  • 在服务器端运行gulp - 这意味着当无法完全控制服务器时,正常工作流程会发生重大中断,这通常是外部项目的情况 - 这也意味着需要进行大量额外的初始工作即使在可能的情况下设置每个新项目服务器

有没有人设法在类似的情况下使用它?

- 我也欢迎任何其他建议/指示,如果我只是完全错误的话。

或多或少极少(基于我迄今为止有限的知识)文件重现:

package.json

{
  "name": "grunt_gulp_test",
  "version": "0.0.1",
  "description": "",
  "main": "gulpfile.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "Mikkel",
  "license": "ISC",
  "devDependencies": {
    "grunt": "^0.4.5",
    "grunt-contrib-sass": "^0.9.2",
    "grunt-contrib-watch": "^0.6.1",
    "gulp": "^3.8.11",
    "gulp-autoprefixer": "^2.3.0",
    "gulp-load-plugins": "^0.10.0",
    "gulp-sass": "^2.0.1",
    "gulp-sourcemaps": "^1.5.2",
    "gulp-util": "^3.0.4"
  }
}

Gruntfile.js

module.exports = function(grunt) {
    grunt.initConfig({
        sass: {                              // Task
            dist: {                            // Target
                options: {                       // Target options
                    style: 'expanded'
                },
                files: {                         // Dictionary of files
                    'test_grunt.css': 'test.scss'
                }
            }
        },
        watch: {
            scripts: {
                files: ['test.scss'],
                tasks: ['sass'],
                options: {
                    spawn: false
                }
            }
        }
    });

    grunt.loadNpmTasks('grunt-contrib-sass');
    grunt.loadNpmTasks('grunt-contrib-watch');

    grunt.registerTask('default', ['sass']);
    grunt.registerTask('watch_it', ['sass', 'watch']);
};

gulpfile.js

'use strict';

var gulp = require('gulp');
var gutil = require( 'gulp-util' );
var $ = require('gulp-load-plugins')();

gulp.task('styles', function () {
  return gulp.src([
    'test.scss'
  ])
    .pipe($.sourcemaps.init())
    .pipe($.sass({
      precision: 10,
      onError: console.error.bind(console, 'Sass error:')
    }))
    .pipe($.autoprefixer({browsers: ['> 5%']}))
    .pipe($.sourcemaps.write())
    .pipe(gulp.dest('.'));
});

gulp.task('default', ['styles']);

gulp.task('watch', ['styles'], function () {
  gulp.watch(['test.scss'], ['styles']);
});

test.css

div {
    div {
        display: flex;
        background: #445552;
    }
}

1 个答案:

答案 0 :(得分:1)

这被证实是在Windows上运行的用户的错误。

The bug已经解决,直到它被包含在稳定版本中,受此问题影响的任何其他人都可以使用nightly build >= 201508060002