一尘不染

使用Intellij调试Grunt

node.js

我正在尝试使用Intellij(IDEA)调试grunt。这些技术是:NodeJS,express,AngularJS。

问题:调试器不会在断点处停止。

我很高兴听到您的想法。

配置选项卡:
节点解释器:C:\ Program Files \ nodejs \ node.exe
Javscript文件:C:\ Users [用户] \ AppData \ Roaming \ npm \ node_modules \ grunt-
cli \ bin \ grunt

浏览器/实时编辑选项卡:

http://localhost:3000/

这是Gruntfile.js:

var path = require('path');

module.exports = function (grunt) {

grunt.initConfig({
    express: {
        dev: {
            options: {
                script: 'server.js'
            }
        },
    },
    watch: {
        html: {
            files: [ '**/*.html'],
            options: {
                livereload: true
            }
        },
        server: {
            files: [ 'server.js'],
            tasks: ['express:dev'],
            options: {
                livereload: true,
                spawn: false // Without this option specified express won't be reloaded
            }
        },
        js: {
            files: [ '**/*.js'],
            options: {
                livereload: true
            }
        }
    },
    open: {
        express: {
            // Gets the port from the connect configuration
            path: 'http://localhost:3000'
        }
    }

});

grunt.loadNpmTasks('grunt-contrib-watch');
grunt.loadNpmTasks('grunt-express-server');
grunt.loadNpmTasks('grunt-open');

grunt.registerTask('default', ['express:dev', 'watch' ])

};


阅读 245

收藏
2020-07-07

共1个答案

一尘不染

刚刚尝试了一个作为Grunt任务运行的示例Angular +
Express应用程序。我已经使用了您的Gruntfile.js(未更改)。我的Node.js运行配置如下所示:

配置选项卡:节点解释器:C:\ Program Files \ nodejs \ node.exe Javscript文件:C:\ Users [用户] \
AppData \ Roaming \ npm \ node_modules \ grunt-cli \ bin \ grunt工作目录:我的项目根目录-
Gruntfile.js所在的文件夹

实时编辑选项卡:在启动后启用JavaScript调试器

http://localhost:3000

我在我的controllers.js中设置了断点,并在debugger =>
Angular代码中的断点上运行了上面的配置,这与预期的一样。我的服务器代码中的断点不是:)

为了在服务器端代码工作中获得断点,我做了以下工作:

  • 在Gruntfile.js中为开发人员选项添加了’debug:true’:

表达:{dev:{选项:{脚本:’server.js’,debug:true}}},

  • 修改了node_modules \ grunt-express-server \ tasks \ lib \ server.js,第65行,将’–debug’更改为’–debug-brk =’(在我的情况下为’–debug-brk = 47977’)
2020-07-07