我正在做一个我朋友做的项目。这是ruby on rails,他用的是m1 mac。然而,我在Windows上(通过Docker运行项目),并且对Ruby完全陌生。当我运行项目时,在安装bundle和yarn之后,我在调试控制台中得到这个错误,不知道为什么。有什么想法吗
Uncaught Error: Module build failed (from ./node_modules/rails-erb-loader/index.js):
Error: rails-erb-loader failed with code: 127
at ChildProcess.<anonymous> (/flightdeck/node_modules/rails-erb-loader/index.js:128:16)
at ChildProcess.emit (node:events:513:28)
at maybeClose (node:internal/child_process:1100:16)
at Socket.<anonymous> (node:internal/child_process:458:11)
at Socket.emit (node:events:513:28)
at Pipe.<anonymous> (node:net:301:12)
at ./app/javascript/packs/stripe_checkout.js.erb (http://localhost:3000/packs/js/application-92b054144842785867e5.js:2983:7)
at __webpack_require__ (http://localhost:3000/packs/js/application-92b054144842785867e5.js:20:30)
at Module.<anonymous> (http://localhost:3000/packs/js/application-92b054144842785867e5.js:1426:76)
at ./app/javascript/packs/application.js (http://localhost:3000/packs/js/application-92b054144842785867e5.js:1734:30)
at __webpack_require__ (http://localhost:3000/packs/js/application-92b054144842785867e5.js:20:30)
at http://localhost:3000/packs/js/application-92b054144842785867e5.js:84:18
at http://localhost:3000/packs/js/application-92b054144842785867e5.js:87:10
字符串
2条答案
按热度按时间7uzetpgm1#
事实证明,这个问题是由于一些文件在应该是LF的时候被CRLF了。一旦我手动更改了这些文件,项目就成功运行了。
vd8tlhqk2#
你会得到这个错误是因为rails-erb-loader,它是一个允许你在JavaScript文件中使用Ruby代码的工具。错误代码127通常意味着它试图运行一个它找不到的命令。由于您是在Docker容器内的Windows机器上运行此命令,因此它试图运行的命令可能未安装或无法访问。
要尝试解决此问题:
查看您的Dockerfile:这是Docker用来构建项目的方法。确保它的设置安装了所有你需要的东西,如Ruby,Rails,Node.js和Yarn。它还需要安装rails-erb-loader使用的命令,即rails和erb。
检查您的PATH:PATH就像是一个位置列表,您的系统在其中查找要运行的命令。您可以通过向JavaScript文件添加一行代码来检查PATH中的内容,并将其打印出来,如下所示:
字符串
再次运行您的项目,看看它会打印出什么。确保安装轨道和erb的地方在那里。
查看您的webpack配置:Webpack是使用rails-erb-loader的工具,因此请检查其配置并确保一切设置正确。如果rails和erb命令不在通常的位置,您可能需要告诉它在哪里可以找到它们。
检查您的版本:确保你使用的Ruby、Rails、Node.js和Yarn的版本都能很好地配合rails-erb-loader。
重建Docker镜像:如果您对Dockerfile或配置文件进行了任何更改,则需要重新构建Docker映像并尝试再次运行项目。
如果你在尝试了所有这些之后仍然卡住了,让我知道。我需要更多关于你的Docker设置以及你使用的Ruby、Rails、Node.js和Yarn版本的信息。