- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个简单的 gulpfile.js:
var gulp = require('gulp');
var sass = require('gulp-sass');
var connect = require('gulp-connect');
var imagemin = require('gulp-imagemin');
var notify = require("gulp-notify");
var pngquant = require('imagemin-pngquant');
gulp.task('connect', function() {
connect.server({
root: ['./'],
livereload: true
});
});
gulp.task('sass', function() {
gulp.src(['css/**/*.scss'])
.pipe(sass({
errLogToConsole: false,
onError: function(err) {
return notify().write(err);
}
}))
.pipe(gulp.dest('build'))
.pipe(notify({ message: 'Styles task complete' }))
.pipe(connect.reload());
})
gulp.task('imagemin', function () {
return gulp.src('src/images/*')
.pipe(imagemin({
progressive: true,
svgoPlugins: [{removeViewBox: false}],
use: [pngquant()]
}))
.pipe(gulp.dest('build/images/'));
});
gulp.task('default', function() {
gulp.run('connect', 'sass', 'imagemin');
gulp.watch('css/**', function(event) {
gulp.run('sass');
gulp.run('connect');
})
gulp.watch('*.html', function(event) {
gulp.run('connect');
})
gulp.watch('src/images/*', function(event) {
gulp.run('imagemin');
})
})
gulp.task('start', ['connect']);
Livereload 服务器工作正常。但是,当我尝试编辑 scss 或 index.html 文件时,出现以下错误:
events.js:72
throw er; // Unhandled 'error'
^
Error: listen EADDRINUSE
at errnoException (net.js:904:11)
at Server._listen2 (net.js:1042:14)
at listen (net.js:1064:10)
at Server.listen (net.js:1138:5)
at ConnectApp.server (C:\xampp\htdo
ex.js:57:19)
at new ConnectApp (C:\xampp\htdocs\
js:37:10)
at Object.module.exports.server (C:
connect\index.js:170:12)
at Gulp.gulp.task.gulp.src.pipe.pip
smi2.0\gulpfile.js:10:11)
at module.exports (C:\xampp\htdocs\
rchestrator\lib\runTask.js:34:7)
at Gulp.Orchestrator._runTask (C:\x
de_modules\orchestrator\index.js:273:3)
没有 gulp-connect 一切都工作正常。我确信 gulpfile.js 中有一个小语法错误,但我无法找到它。请帮忙解决这个问题。
这是一个最终的 gulpgile.js,比 @Rigotti 工作得很好:
var gulp = require('gulp');
var sass = require('gulp-sass');
var connect = require('gulp-connect');
var imagemin = require('gulp-imagemin');
var notify = require("gulp-notify");
var pngquant = require('imagemin-pngquant');
gulp.task('connect', function() {
connect.server({
root: ['./'],
livereload: true
});
});
gulp.task('sass', function() {
gulp.src(['css/**/*.scss'])
.pipe(sass({
errLogToConsole: false,
onError: function(err) {
return notify().write(err);
}
}))
.pipe(gulp.dest('build'))
.pipe(notify({ message: 'Styles task complete' }))
.pipe(connect.reload());
})
gulp.task('imagemin', function () {
return gulp.src('src/images/*')
.pipe(imagemin({
progressive: true,
svgoPlugins: [{removeViewBox: false}],
use: [pngquant()]
}))
.pipe(gulp.dest('build/images/'));
});
gulp.task('html', function () {
gulp.src('index.html')
.pipe(connect.reload());
});
gulp.task('default', function() {
gulp.run('connect', 'sass', 'imagemin');
gulp.watch('css/**', function(event) {
gulp.run('sass');
})
gulp.watch('*.html', function(event) {
gulp.run('html');
})
gulp.watch('src/images/*', function(event) {
gulp.run('imagemin');
})
})
gulp.task('start', ['connect']);
最佳答案
EADDRINUSE 表示端口已在使用中。
在下面的代码中,您在 default
中调用 connect
任务,但是当您更改 时,
文件。connect
会再次调用它.sass
gulp.task('default', function() {
// server started
gulp.run('connect', 'sass', 'imagemin');
gulp.watch('css/**', function(event) {
gulp.run('sass');
gulp.run('connect'); // <-- problem! connect is already running!
});
...
因此,您基本上是在尝试监听您正在使用的同一端口,从而出现此错误。
删除watch
内的gulp.run('connect')
就可以了。
关于Gulp-connect 显示错误 'listen EADDRINUSE',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29302453/
我试图挽救在bind语句中两次尝试使用相同地址时ruby引发的异常。 documentation不是很有帮助。 这就是我想要的: require 'socket' s = UDPSocket.new(
假设您有 2 个 ASP.NET 核心项目;一个 API 和一个网站。我想使用以下 url 在本地(同时,因为该网站使用 api)处理这些问题:devapi.website.com 和 dev.web
我在 Android 上遇到 TCP 服务器问题。服务器必须管理多个传入连接,目前来自同一用户。我收到以下错误: 02-06 17:37:44.800: W/System.err(9859): jav
我已经在Ubuntu 10.04上配置并安装了ouchdb 1.6.1。在配置和安装时说成功完成了。但是,当我启动沙发床时,它给了我错误。 首次启动时。 Apache CouchDB 1.6.1 (L
IOLib 允许创建一个被动套接字来监听客户端的连接,在调用 listen 之前,我们需要调用 (bind-address) 将套接字绑定(bind)到指定的地址/端口。 嗯,问题是我第一次把sock
我正在做套接字编程。我引用了以下链接: http://examples.javacodegeeks.com/android/core/socket-core/android-socket-exampl
我开始使用 [cloud9][1] 并尝试托管我的 nodejs 应用程序。当我尝试运行我的应用程序时,它抛出以下错误: 重要:使用 process.env.PORT 作为端口,使用 process.
尝试构建实验性 CRUD 应用程序,但连接到数据库时出现问题。 使用 mLab 免费数据库。无论指定哪个端口,错误都是 EADDRINUSE::: 如何关闭可能使用这些端口的所有 Node 实例? 最
我有一个简单的 gulpfile.js: var gulp = require('gulp'); var sass = require('gulp-sass'); var connect
我有来自 CSgo roullete 的脚本。当我尝试运行它时显示此错误 errno: 'ECONNREFUSED', syscall: 'connect', address: '
这是我的 Gruntfile: module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON
在我的 C++ 应用程序中,我将::bind() 用于 UDP 套接字,但在极少数情况下,由于连接丢失而重新连接后,即使重试多次,我也会收到错误号 EADDRINUSE。将接收数据的 UDP 连接的另
这个问题在这里已经有了答案: 关闭 11 年前。 Possible Duplicates: Releasing bound ports on process exit difference betw
下面是我的test fixture的精华—— SetUp() { g_listen_sock = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
我使用 Ubuntu 20.04、Nodemon 2.0.4、Node 14.9.0 和 Express 4.17.1。每次保存我的代码时,我都会收到此错误: events.js:291
我正在开发一个 google glass/android 应用程序。它是一个视频流应用程序,具有服务器/客户端设置,其中电话/眼镜是服务器,并将 pc 与播放视频的 session 描述 Hook 。
我有一个系统,其中在后台运行的服务器进程由控制程序控制。 控制程序是一个简单的脚本,它执行一个命令然后退出。对于 Run 命令,它会创建一个新的服务器进程;对于其他(包括关机),它通过保留的控制端口将
好吧,这真的很奇怪,我在实现一个简单的服务器时得到了 EADDRINUSE, 我已经更改了端口 寻找已经运行的node js进程 尝试使用 killall -9 node 和 root 通过sudo
我有一个使用express的测试应用程序,它在server.listen(80)上崩溃:错误:监听EADDRINUSE。我尝试使用 killall -9 node 终止所有 Node 进程,但没有进程
如果我使用端口 80 运行服务器,并且我尝试使用 XMLHttpRequest我收到此错误:错误:监听 EADDRINUSE 如果我想在端口 80 上运行服务器时发出请求,为什么 NodeJS 会出现
我是一名优秀的程序员,十分优秀!