我有一个非常简单的任务:

module.exports = function(grunt){
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        php2html: {
            default: {
              files: [
                {expand: true, cwd: 'content/', src: ['*.php'], dest: 'build/content', ext: '.html' }
              ]
            }
        },
    });
    grunt.loadNpmTasks('grunt-php2html');
    grunt.registerTask('default', ['php2html']);
};


当我用grunt运行它时,我得到:

# grunt
Running "php2html:default" (php2html) task
Processing content/cart.php...Fatal error: listen EADDRINUSE


致命错误是什么:听EADDRINUSE,该如何解决?不幸的是,我的搜索没有给出任何有意义的结果。

最佳答案

EADDRINUSE表示内部已用于生成HTML的端口号已被使用。默认情况下,grunt-php2html使用本地主机上的端口8888。您是否尝试过在配置中使用其他端口?

module.exports = function(grunt){
    grunt.initConfig({
        pkg: grunt.file.readJSON('package.json'),
        php2html: {
            default: {
              options: {
                 port: 8181,
              }
              files: [
                {expand: true, cwd: 'content/', src: ['*.php'], dest: 'build/content', ext: '.html' }
              ]
            }
        },
    });
    grunt.loadNpmTasks('grunt-php2html');
    grunt.registerTask('default', ['php2html']);
};

09-25 16:56