Azure 和 Node js __dirname

2023-12-13

可能它与 webpack/memory-fs 没有特别相关,但我得到了RangeError: Maximum call stack size exceeded错误(请参阅下面的调用堆栈)。

我发现,那__dirname在 Azure (webapp) 上返回\\100.78.172.13\volume-7-default\8f5ecde749dace2bb57a\4e07195f015b45ce8e9ba255dc901988\site\repository\Source\Website\Content\app\node_modules\webpack\node_modules\memory-fs\lib\normalize.js在我的情况下,同时process.cwd()回报D:\home\site\repository\Source\Website\Content\app.

我这边可以做些什么来配置 Node js 返回D:\...代替\\.. ?

Gist

如何重现:

  1. 克隆https://github.com/intellismiths/webapp1存储库。
  2. 创建新的 Azure Web App(默认设置)。
  3. 配置部署源以使用 GitHub。
  4. Click Sync。需要 10 多分钟才能完成,将显示部署成功。
  5. 转到 Azure 中的应用程序设置并更改WEBSITE_NODE_DEFAULT_VERSION to 6.2.2
  6. 转到 kudu 页面并打开 powershell 控制台。
  7. Execute npm cache clean
  8. 通过执行检查节点版本node -v。它应该是v6.2.2
  9. 在 Azure 上,导航到D:\home\site\respository\src\WebApp1
  10. Execute npm run build
  11. 在控制台中,您应该看到很多错误,表明模块无法解析.
  12. 选修的。测试npm run build在你的本地机器上 - 它应该产生wwwroot/app.js没有错误。
  13. Update webpack.config.js包括context: __dirname修复以前的错误。
  14. Execute npm run build
  15. 在控制台中,您应该看到“RangeError:超出最大调用堆栈大小”错误。

Update 1

我只是在添加第二个 package.json 后才尝试设置 6.2.2 运行时,因此项目结构并不是最简单的。也许只是将节点设置为 6.2.2 会破坏构建。


我可以按照您的步骤重现您的问题。我发现关键点是设置WEBSITE_NODE_DEFAULT_VERSION to 6.2.2。我发现 webpack 任务工作得很好,如果WEBSITE_NODE_DEFAULT_VERSION是在6.

请降级设置WEBSITE_NODE_DEFAULT_VERSION到下面的版本6 e.g. 5.9.0如果你的node.js模块不需要这么高的版本。
并根据package.jsonAngular2位于https://github.com/angular/angular/blob/master/package.json,似乎Angular2存储库需要之间的node.js版本5.4 and 6.

此外,Azure Web Apps 上的 Web 应用程序的根目录是D:\home\site\wwwroot。因此,如果您想在 Azure Web Apps 上构建前端项目,您需要找到D:\home\site\wwwroot\wwwroot\mobile-web-app然后运行npm run build.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Azure 和 Node js __dirname 的相关文章

随机推荐

  • 在Python中使用Win32api获取鼠标滚轮滚动

    我想读取鼠标滚轮滚动事件然后模拟它们 我知道我可以使用下面的代码来模拟它 Scroll one up win32api mouse event MOUSEEVENTF WHEEL x y 1 0 Scroll one down win32a
  • Angular 4 - 动态更新 Facebook 的元标签(开放图)

    我们如何动态添加 更新元标记 以便 Facebook Whatsapp 共享对话框选择它们 我将 Angular 2 应用程序升级到 Angular 4 以便在我们从 API 获取组件中的数据后 使用元服务动态添加 更新元标记 到目前为止
  • CSS:在不改变容器大小的情况下将某些文本加粗

    我有一个水平导航菜单 它基本上只是一个 ul 元素并排设置 我不定义宽度 而只是使用填充 因为我希望宽度由菜单项的宽度定义 我将当前选定的项目加粗 问题在于 在加粗时 单词会变得稍微变宽 这会导致其余元素稍微向左或向右移动 有什么聪明的方法
  • 是否可以在 RAM 中执行一些计算?

    理论上 有没有办法使用内存相关指令 例如move clflush或其他任何东西 例如xor例如 在两个相邻行之间 由于我对 RAM 和汇编的了解有限 我无法想到任何这样的可能性 不 任何计算都是在 CPU 或 GPU 或其他可以加载 存储到
  • SAS PRX 请提取子字符串

    我正在尝试使用 SAS PRX 函数从我的数据集中提取子字符串 但它只返回精确的匹配项 而我需要它更加灵活并提取匹配各种条件的匹配项 我已将我的数据复制到下面 如您所见 我的数据中的变量之一是 brandmodel 其中包含特定相机的品牌名
  • 如何使用annotation_custom()将GROB放置在绘图区域的精确区域?

    我正在尝试使用以下命令重现以下 base R 图ggplot2 我已经完成了大部分工作 但目前令我困惑的是连接图右侧边缘地毯图的线段的位置以及相应的标签 标签已通过以下方式绘制 在下面的第二张图中 anotation custom 我已经使
  • JavaFX 打包:NoClassDefFoundError

    我使用 maven 和 OpenJDK 1 8 打包 JavaFX 应用程序 我的 pom xml 中的相关部分
  • 如何为终端制作动画 bash shell 提示符?

    我想在终端中制作动画光标提示 Ubuntu 14 04 所以我制作这个脚本 while do echo ne r sleep 0 3 echo ne r sleep 0 3 echo ne 一 r sleep 0 3 echo ne r s
  • 从base64字符串获取图像尺寸

    我收到图像的 base64 字符串并将其用作 html 页面的源 反过来 img 是 div 的子级 我想让 div 根据图像尺寸自动调整大小 尝试使用 javascript element style height 获取图像的尺寸 但它不
  • 什么是烫发空间?

    在学习 Java 内存分析时 除了 堆 之外 我还不断看到术语 永久空间 我知道堆是什么 什么是 Perm 空间 它代表永久代 永久代很特殊 因为它包含描述的元数据 用户类别 不是的类别 Java 语言的一部分 例子 这些元数据的一部分是对
  • Glassfish 在哪里将类加载器委托选项设置为 false

    我有一个 Web 应用程序 在 glassfisch 3 1 2 上运行 我遇到了 ClassCastException 我想尝试通过将类加载器委托设置为 false 来解决它们 我无法弄清楚在哪里 什么文件 插入以下 xml 标记
  • PHP 根据另一个数组中的文本重复项求和数组值

    我有两个数组 两个数组的计数长度始终相同 第一个具有与整数混合的双精度值 第二个具有文本 仅字符串 值 它们确实相关 所以我需要它们都保持有序 抱歉 没有可用的键 按设计 我需要对包含字符串的数组中重复的值进行求和 Example data
  • Visual Basic 如何读取 CSV 文件并在数据网格中显示值?

    我正在使用 VB 2005 如何打开 CSV 文件并读取列 行并在数据网格中显示值 CSV 文件示例 杰史密斯 电子邮件受保护 然后我想对每一行 即每个用户 执行一个操作 我该怎么做 正如你所知 我是一个新手 但很乐意学习 Thanks U
  • React - TypeError:无法读取未定义的属性“图像”

    所以我正在为一个副项目创建一个电子商务商店 但我遇到了一个问题 在主页上我有所有产品 并且我已经为产品详细信息创建了一条路线 当我点击其中之一时 它会获取 id 并应输出所有产品详细信息 我在 JSON 数组 data js 中有有关产品的
  • 使用具有多个条件的sql获取总和

    我的列中的数据为 Process Volume TAT 1 1 Pass 1 2 Fail 2 5 Fail 2 5 Pass 3 1 Pass 4 6 Fail 4 4 Pass 现在按流程分组 我想要体积总和 不考虑任何 TAT TAT
  • 对当前行号着色

    我在用global linum mode对于行号 如果当前行的行号用不同的颜色 和 或不同的背景 突出显示 那就太好了 有人知道如何实现这一目标吗 谢谢你 我从之前的回答中得出了这个答案Emacs 中的相对行号 因为它处理在 linum 格
  • 什么时候应该在 C# 4.0 中使用动态关键字?

    什么时候应该在 c 4 0 中使用动态关键字 c 4 0 中任何带有动态关键字的好例子可以解释其用法 只能使用动态不使用时会很痛苦 就像 MS Office 库一样 在所有其他情况下 应该避免它 因为编译类型检查是有益的 以下是使用动态的良
  • nuget 包中的 .targets 文件 - 如何将内容文件包含到构建中

    我有一个 nuget 包 例如 build SharedTargets targets content File cs SharedTargets targets 看起来像
  • Famo.us 引擎中提供哪些活动

    我想知道 Famo us 引擎对象可以订阅哪些事件 来自 Famo us大学 引擎还会发出某些事件 例如 预渲染 和 后期渲染 然而 由于这些事件的频繁发生 他们 仅应在绝对必要时使用 还有其他方便的引擎事件 即 调整大小 那么 引擎发出的
  • Azure 和 Node js __dirname

    可能它与 webpack memory fs 没有特别相关 但我得到了RangeError Maximum call stack size exceeded错误 请参阅下面的调用堆栈 我发现 那 dirname在 Azure webapp