2014-10-27 132 views
1

我想对使用几个节点库我Azure的网站部署随需应变的node.js WebJob,但每次运行时产生错误天青Webjob System.IO.PathTooLongException

Failed to copy job files: System.IO.PathTooLongException: The specified path, file name, or both are too long. The fully qualified file name must be less than 260 characters, and the directory name must be less than 248 characters. 

取出库可以补救错误,但是我无法运行WebJob。我如何解决这个问题?

回答

1

这是当前WebJobs/node.js/Windows的已知限制。

由于WebJob正在从临时目录(它有一个已经很长的路径开始)运行,并且在某些情况下node_modules倾向于具有很长的依赖性树,其结果是具有长路径和窗口限制路径长度的文件。

解决方法:

  1. 最长的路径删除文件,通常他们是测试相关的,并不会影响你的脚本。
  2. 如果您使用npm install,您可以尝试使用npm dedupe,它可以帮助(https://www.npmjs.org/doc/cli/npm-dedupe.html)。
+0

有没有办法找出哪些文件导致问题?也许用fs递归迭代文件? – danielmhanover 2014-10-27 22:52:53

+0

我使用dir/s/b并且时间最长 – 2014-10-28 18:36:36

+0

我也收到了这个消息,但在我的情况下,这个工作的状态一直保持“开始”状态(现在已经过去了几天),而且删除按钮变灰。 .. – 2014-12-03 22:23:54