Azure构build中的Node.js错误

我从Visual Studio 2015社区版创build了一个全新的ASP.NET 5项目。 我在这里检查代码到BitBucket的存储库中:

https://bitbucket.org/admin_at_scanburapps/sandbox-repo

我在Azure上创build一个新的Web应用程序,并从此存储库安装部署。 Azure拉出代码,开始build设,并给我这个错误:

> module.js:339 > throw err; > ^ > > Error: Cannot find module 'lodash' > at Function.Module._resolveFilename (module.js:337:15) > at Function.Module._load (module.js:287:25) > An error has occurred during web site deployment. > at Module.require (module.js:366:17) > at require (module.js:385:17) 

(请参阅下面的更多输出)

我已经完成了npm install和npm重复数据删除,并在node_modules中进行了检查。 我也validation了lodash的确在node_modules下find。 所以我很困惑为什么找不到lodash模块。

任何人都可以猜测问题是什么?

注意:完整的构build日志如下所示:

 > Command: "D:\home\site\deployments\tools\deploy.cmd" Handling ASP.NET > 5 Web Application deployment. 'dnx-clr-win-x86.1.0.0-rc1-update1' is > already installed in > D:\local\UserProfile\.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1. > Adding > D:\local\UserProfile\.dnx\runtimes\dnx-clr-win-x86.1.0.0-rc1-update1\bin > to process PATH Microsoft .NET Development Utility > Clr-x86-1.0.0-rc1-16231 > > CACHE https://api.nuget.org/v3/index.json Restoring packages for > D:\home\site\repository\src\ScanburSandbox\project.json GET > https://api.nuget.org/v3-flatcontainer/system.net.sockets/index.json > OK > https://api.nuget.org/v3-flatcontainer/system.net.sockets/index.json > 1760ms Writing lock file > D:\home\site\repository\src\ScanburSandbox\project.lock.json Restore > complete, 11695ms elapsed > > Feeds used: > https://api.nuget.org/v3-flatcontainer/ Microsoft .NET Development Utility Clr-x86-1.0.0-rc1-16231 > > Executing script 'prepublish' in project.json > - readable-stream@1.0.33 node_modules\gulp-concat\node_modules\readable-stream npm WARN > ASP.NET@0.0.0 No description npm WARN ASP.NET@0.0.0 No repository > field. npm WARN ASP.NET@0.0.0 No license field. module.js:339 > throw err; > ^ > > Error: Cannot find module 'lodash' > at Function.Module._resolveFilename (module.js:337:15) > at Function.Module._load (module.js:287:25) An error has occurred during web site deployment. > at Module.require (module.js:366:17) > at require (module.js:385:17) > at Object.<anonymous> (D:\home\site\repository\src\ScanburSandbox\node_modules\globule\lib\globule.js:14:9) > at Module._compile (module.js:435:26) > at Object.Module._extensions..js (module.js:442:10) > at Module.load (module.js:356:32) > at Function.Module._load (module.js:311:12) > at Module.require (module.js:366:17) > at require (module.js:385:17) The 'prepublish' script failed with status code 1. 

我设法使用几乎类似的存储库在Azure上进行连续部署,但没有发生此错误。 我已经比较了两个项目,但是找不到解释这个错误的明显区别。

https://github.com/nikolaschou/TodolistService01

我在project.json文件的"scripts"部分下删除了"gulp clean", "gulp min"命令,并从BitBucket成功部署。

您可以尝试从代码中删除这两个命令,然后在将其部署到Azure Web应用程序之前在本地项目中运行这些命令。