2015-07-03 37 views
3

加载的nodejs模块的JavaScript源代码我试图设置开发NodeJS应用程序的环境,使用NodeJS插件与IntelliJ IDEA(我相信它在WebStorm中的工作原理相同)。IntelliJ IDEA不映射通过require()

我在运行简单应用程序时没有问题,但是一旦我开始使用我自己的模块require(),我最终会遇到一个问题:IDEA不理解所需模块的源文件和所有堆栈跟踪我模块内部断点看起来就像这样:

unknown:0 // (this is my require()d module, but wrapped in an IIFE by nodejs module loader) Module._compile(), module.js:460 Module._extensions..js(), module.js:478 ...

debugger stack trace

(如源代码没有拾起,我我与步骤模块中结束了内/从我的主文件步过)

的代码是很基本的:

var m = require("./modulejs.js"); 
var test = new m.Test("Test"); 
test.printname(); 

modulejs.js看起来是这样的:

var Test = (function() { 
    function Test(name) { 
     this.name = name; 
    } 
    Test.prototype.printname = function() { 
     console.log("Test name: " + this.name); // I'm on this line in the screenshot above 
    }; 
    return Test; 
})(); 
exports.Test = Test; 

这个问题似乎很基本的,我认为我肯定是在我身边的一些错误配置。

我在Windows 7上使用IDEA 14.1.4和NodeJS插件141.1509,两者似乎都是最新的稳定版本。我也尝试了不同的nodejs版本:0.11.16和0.12.5,两个版本都有相同的行为。正如预期的那样,它与0.10.36一起工作。

+0

您的代码对我运行良好 - 没有例外,测试名称按预期打印。我几乎无法想象这里可能会配置错误 - Node.js运行配置很简单 - 只是运行节点和文件的路径...请仅用2个.js文件创建一个新项目并粘贴代码 - 您可以运行你的代码? – lena

+0

这就是我如何结束这段代码 - 创建一个空的项目并在那里添加这两个文件。该代码也适用于我,但我不能在我的模块('modulejs.js')中放置断点,IDEA无法识别它们 – Hrundik

+0

我修改了一下这个问题,使其更清楚一点问题不在代码中,但是在调试时 – Hrundik

回答

0

我遇到过同样的问题。解决方案是使用intellij Webstorm而不是intellij。它没有这个问题,并可能从远程服务器下载.js文件(我不知道这一点)。但我通过这种方式解决了这个问题。希望这可以帮助。