Browserify失败,无法找到某些文件的模块“lodash”错误

时间:2015-07-31 07:57:11

标签: gruntjs browserify grunt-browserify

我正在为位于某个路径的app.js运行browserify,并且每次都失败,无法从lodash找到模块[PATH]

Running "browserify:build" (browserify) task
Error: Cannot find module 'lodash' from '/var/lib/jenkins/buildcode/output/mydir/app_store_richUI/cartridge/js'
Warning: Error running grunt-browserify. Use --force to continue.

[PATH]与app.js文件所在的位置相同。但是,如果我将文件名更改为同一路径上的其他js文件,则可以正常工作。因此,场景是它为某些js文件成功,而对于同一路径的其他人则失败。

有人可以提出建议吗?

我全局安装了Browserify.js脚本。

Browserify.js

module.exports = {
        build: {
            files: {
                '<%= settings["local.build.dir"] %>/output/<%= grunt.config("build") %>/app_eyeconic_richUI/cartridge/static/default/js/eyeconic.app.js':'<%= settings["local.build.dir"] %>/output/<%= grunt.config("build") %>/app_eyeconic_richUI/cartridge/js/app.js'
            },
        }

}

路径在包含其他文件的日志中正确显示。它仅在app.js文件

时失败

1 个答案:

答案 0 :(得分:1)

这是一个非常微不足道的问题,但花了很长时间才解决。 问题是构建套件位于与构建源不同的位置。 browserify任务包含require语句,它搜索父目录中的模块,因此无法找到所需的模块。

在与源相同的路径上复制构建套件后,它可以工作。

所以目前,我的gruntfile.js(以及套件中的其他文件/文件夹),导出和输出目录都是相同的路径。