创建 GO PATHgulpfile.js
var gulp = require('gulp');
var path = require('path');
var shell = require('gulp-shell');
var goPath = 'src/mypackage/**/*.go';
gulp.task('compilepkg', function() {
return gulp.src(goPath, {read: false})
.pipe(shell(['go install <%= stripPath(file.path) %>'],
{
templateData: {
stripPath: function(filePath) {
var subPath = filePath.substring(process.cwd().length + 5);
var pkg = subPath.substring(0, subPath.lastIndexOf(path.sep));
return pkg;
}
}
})
);
});
gulp.task('watch', function() {
gulp.watch(goPath, ['compilepkg']);
});
在上面的代码中,我们定义了一个 compliepkg 任务,每当 goPath(src / mypackage /)或子目录中的任何 go 文件发生变化时,都会触发该任务。该任务将运行 shell 命令 go install changed_file.go
在 go 路径中创建 gulp 文件并定义任务后打开命令行并运行:
gulp 手表
每次文件更改时,你都会看到类似的内容: