Node.js Can';t将节点项目发布到Azure-文件名必须少于260个字符

Node.js Can';t将节点项目发布到Azure-文件名必须少于260个字符,node.js,visual-studio,azure,visual-studio-2013,Node.js,Visual Studio,Azure,Visual Studio 2013,我正在Visual Studio 2013中使用NodejsTools,但可以将我的项目发布到Azure。在生成文件时,出现以下错误: C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v12.0\Node.js Tools\Microsoft.NodejsTools.targets(115,5):错误MSB4018: “AssignTargetPath”任务意外失败。 System.IO.PathTooLongException:指定的路

我正在Visual Studio 2013中使用NodejsTools,但可以将我的项目发布到Azure。在生成文件时,出现以下错误:

C:\Program Files(x86)\MSBuild\Microsoft\VisualStudio\v12.0\Node.js Tools\Microsoft.NodejsTools.targets(115,5):错误MSB4018: “AssignTargetPath”任务意外失败。 System.IO.PathTooLongException:指定的路径、文件名或两者 太长了。完全限定文件名必须小于260 字符,并且目录名称必须少于248个字符

关于如何修复此问题/使我的节点项目发布到Azure的任何线索

更新1:如果我将项目移动到Windows C:驱动器中的根文件夹中,生成错误将消失,生成成功。但是,如果我尝试发布,它会失败,并且不会给出原因:

------发布已启动:项目:MyProject,配置:释放任何CPU------自动连接字符串将Web.config转换为 obj\Release\csautoparametrize\transformed\Web.config。复制所有 将文件保存到下面的临时位置以进行打包/发布: obj\Release\Package\PackageTmp

======生成:0成功,0失败,1最新,0跳过========== =========发布:0成功,1失败,0跳过==========


如果没有错误代码,则很难进行故障排除

我建议您需要检查
项目文件中的
值,例如
节点.js
中的
等,该文件以
.njsproj
结尾。任何信息,请与我分享

在我的测试中,我必须通过Azure Node.js应用程序模板创建一个nodejs应用程序,以便将其发布到Azure Web应用程序。

您可以尝试使用Azure node.js应用程序创建新的node.js应用程序,并检查是否可以将其发布到Azure Web app。成功将应用发布到Azure后,您可以将代码复制到此项目中,然后再次尝试发布


如果有任何问题,请告诉我

我遇到了同样的问题。在VisualStudio模板中创建的路径确实太长,无法上载到Azure上。这些路径可能位于“node_modules”文件夹中

我解决这个问题的方法如下: 在项目文件夹中,我删除了文件夹“node_modules”,其中包含构建项目所需的所有模块。您可以稍后添加这些模块,因此无需担心

打开visual studio,重新加载解决方案并在Azure帐户上再次发布项目。VisualStudio现在可能不会返回任何错误,因为所有路径都少于240个字符


然后,登录Azure门户,打开web应用程序,单击“添加互动程序”并添加控制台互动程序。打开控制台互动程序并运行命令“npm install”。此命令添加项目中的所有依赖项,从而添加文件夹“node_modules”,其中包含项目所需的所有模块。您可以使用“Visual Studio Online Extension”查看您的项目并对其进行操作。

谢谢Gary,我以后需要尝试此功能,因为我目前正在使用Azure的FTP。我一测试,就会发回。