将服务器任务添加到我的 gruntfile.js,其中包含用于连接到中间件代理的连接任务,但未找到
Adding server task to my gruntfile.js which contains connect task for connecting to middleware proxies, but not being found
我正在向我现有的 gruntfile 添加一个新的服务器任务,其中包含将内容构建到缩小文件中的唯一任务。我需要添加 server/serve 任务。我的服务器任务的目标是连接到中间件代理,以便在遇到 /web/*
时重定向到其他 url。我不断收到以下错误:
Running "server" task
Warning: Task "connect:server" not found. Use --force to continue.
任何帮助将不胜感激!
module.exports = function (grunt) {
grunt.loadNpmTasks('grunt-connect-proxy');
grunt.initConfig({
connect: {
server: {
options: {
port: 8080,
hostname: 'localhost',
middleware: function (connect, options) {
var proxy = require('grunt-connect-proxy/lib/utils').proxyRequest;
return [
// Include the proxy first
proxy,
// Serve static files.
connect.static(options.base),
// Make empty directories browsable.
connect.directory(options.base)
];
}
},
proxies: [
{
context: '/web/*',
host: 'blah.com',
port: 8080,
https: true,
secure: false,
changeOrigin: true
}
]
}
},
pkg: grunt.file.readJSON('package.json'),
});
grunt.registerTask('server', function (target) {
grunt.task.run([
'configureProxies:server',
'connect:server'
]);
});
日志:
C:\AltProject\webapp\WEB-INF\front-end\screening>grunt server --verbose
Initializing
Command-line options: --verbose
Reading "Gruntfile.js" Gruntfile...OK
Registering Gruntfile tasks.
Registering "grunt-contrib-watch" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-watch\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-watch\package.json...OK
Loading "watch.js" tasks...OK
+ watch
Registering "grunt-contrib-concat" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-concat\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-concat\package.json...OK
Loading "concat.js" tasks...OK
+ concat
Registering "grunt-contrib-uglify" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-uglify\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-uglify\package.json...OK
Loading "uglify.js" tasks...OK
+ uglify
Registering "grunt-contrib-copy" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-copy\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-copy\package.json...OK
Loading "copy.js" tasks...OK
+ copy
Registering "grunt-concat-css" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-concat-css\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-concat-css\package.json...OK
Loading "concat_css.js" tasks...OK
+ concat_css
Registering "grunt-processhtml" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-processhtml\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-processhtml\package.json...OK
Loading "processhtml.js" tasks...OK
+ processhtml
Registering "rebase" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\rebase\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\rebase\package.json...OK
Loading "grunt-rebase.js" tasks...OK
+ rebase
Loading "gulp-rebase.js" tasks...OK
>> No tasks were registered or unregistered.
Registering "grunt-lineending" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-lineending\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-lineending\package.json...OK
Loading "lineending.js" tasks...OK
+ lineending
Registering "grunt-text-replace" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-text-replace\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-text-replace\package.json...OK
Loading "text-replace.js" tasks...OK
+ replace
Registering "grunt-connect-proxy" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-connect-proxy\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-connect-proxy\package.json...OK
Loading "connect_proxy.js" tasks...OK
+ configureProxies
Reading package.json...OK
Parsing package.json...OK
Initializing config...OK
Loading "Gruntfile.js" tasks...OK
+ build, server
Running tasks: server
Running "server" task
Warning: Task "connect:server" not found. Use --force to continue.
Aborted due to warnings.
我认为您缺少对 grunt-contrib-connect 的依赖并调用 grunt.loadNpmTasks('grunt-contrib-connect');
。 grunt-connect-proxy 只是在其之上添加了代理中间件。
我正在向我现有的 gruntfile 添加一个新的服务器任务,其中包含将内容构建到缩小文件中的唯一任务。我需要添加 server/serve 任务。我的服务器任务的目标是连接到中间件代理,以便在遇到 /web/*
时重定向到其他 url。我不断收到以下错误:
Running "server" task
Warning: Task "connect:server" not found. Use --force to continue.
任何帮助将不胜感激!
module.exports = function (grunt) {
grunt.loadNpmTasks('grunt-connect-proxy');
grunt.initConfig({
connect: {
server: {
options: {
port: 8080,
hostname: 'localhost',
middleware: function (connect, options) {
var proxy = require('grunt-connect-proxy/lib/utils').proxyRequest;
return [
// Include the proxy first
proxy,
// Serve static files.
connect.static(options.base),
// Make empty directories browsable.
connect.directory(options.base)
];
}
},
proxies: [
{
context: '/web/*',
host: 'blah.com',
port: 8080,
https: true,
secure: false,
changeOrigin: true
}
]
}
},
pkg: grunt.file.readJSON('package.json'),
});
grunt.registerTask('server', function (target) {
grunt.task.run([
'configureProxies:server',
'connect:server'
]);
});
日志:
C:\AltProject\webapp\WEB-INF\front-end\screening>grunt server --verbose
Initializing
Command-line options: --verbose
Reading "Gruntfile.js" Gruntfile...OK
Registering Gruntfile tasks.
Registering "grunt-contrib-watch" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-watch\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-watch\package.json...OK
Loading "watch.js" tasks...OK
+ watch
Registering "grunt-contrib-concat" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-concat\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-concat\package.json...OK
Loading "concat.js" tasks...OK
+ concat
Registering "grunt-contrib-uglify" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-uglify\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-uglify\package.json...OK
Loading "uglify.js" tasks...OK
+ uglify
Registering "grunt-contrib-copy" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-copy\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-contrib-copy\package.json...OK
Loading "copy.js" tasks...OK
+ copy
Registering "grunt-concat-css" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-concat-css\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-concat-css\package.json...OK
Loading "concat_css.js" tasks...OK
+ concat_css
Registering "grunt-processhtml" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-processhtml\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-processhtml\package.json...OK
Loading "processhtml.js" tasks...OK
+ processhtml
Registering "rebase" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\rebase\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\rebase\package.json...OK
Loading "grunt-rebase.js" tasks...OK
+ rebase
Loading "gulp-rebase.js" tasks...OK
>> No tasks were registered or unregistered.
Registering "grunt-lineending" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-lineending\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-lineending\package.json...OK
Loading "lineending.js" tasks...OK
+ lineending
Registering "grunt-text-replace" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-text-replace\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-text-replace\package.json...OK
Loading "text-replace.js" tasks...OK
+ replace
Registering "grunt-connect-proxy" local Npm module tasks.
Reading C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-connect-proxy\package.json...OK
Parsing C:\AltProject\webapp\WEB-INF\front-end\screening\node_modules\grunt-connect-proxy\package.json...OK
Loading "connect_proxy.js" tasks...OK
+ configureProxies
Reading package.json...OK
Parsing package.json...OK
Initializing config...OK
Loading "Gruntfile.js" tasks...OK
+ build, server
Running tasks: server
Running "server" task
Warning: Task "connect:server" not found. Use --force to continue.
Aborted due to warnings.
我认为您缺少对 grunt-contrib-connect 的依赖并调用 grunt.loadNpmTasks('grunt-contrib-connect');
。 grunt-connect-proxy 只是在其之上添加了代理中间件。