【问题标题】:How to deploy Elm and Phoenix Elixir to Heroku?如何将 Elm 和 Phoenix Elixir 部署到 Heroku?
【发布时间】:2023-03-10 04:53:01
【问题描述】:

在尝试将 Phoenix/Elm 项目部署到 Heroku 时,我遇到了以下问题:

Running default compile
Elm compile: Main.elm, in web/elm, to ../static/vendor/main.js
/bin/sh: 1: elm: not found
17 Jul 15:58:21 - error: Compiling of web/elm/Main.elm failed. Command failed: elm make --yes --output ../static/vendor/main.js Main.elm
/bin/sh: 1: elm: not found

Check your digested files at "priv/static"

我正在使用 the guides 和 brunch/elm-brunch 中的 Phoenix 构建包。

【问题讨论】:

    标签: heroku phoenix-framework elm


    【解决方案1】:

    该错误是由未安装 elm 二进制文件引起的。 install elm 的一种方法是使用 npmPhoenix buildpack 使用它时已经可用。

    解决方案:在package.json 中添加elm 作为依赖项。这将导致 Phoenix buildpack 在执行 brunch 脚本之前安装 elm。

    请注意,本地计算机可能会单独安装 elm 二进制文件,这可能会导致混淆。只要版本匹配,这应该不是问题。请注意,要使用上面 npm 安装的 elm 二进制文件,必须在 PATH 中包含 ./node_modules/.bin(phoenix buildpack 就是这样做的)。例如。如果一个人有一个单独的 elm 安装,它从以前开始就包含在 PATH 中,这将在从提示符运行命令时使用。

    【讨论】:

    • 有道理。如果我使用安装程序而不是 npm 安装了 Elm,我的开发环境会发生什么?
    • 更新答案以反映@stoft 关于重复 elm 安装的问题
    • @erikxiv 这听起来很奇怪,但你会知道为什么在我的一些 phoenix 项目中我不需要在我的 package.json 中包含 elm 而在其他项目中我需要包含?有时 Elm 似乎已经为一个项目安装在 Heroku 上,但不是另一个项目,这真的让我很困扰。我想我在安装 elm 时做了一些奇怪的事情? Idk,但我没有 Elm 作为 Heroku 上多个项目的依赖项。这怎么可能?
    • @heartmo 我猜想魔鬼在细节中,就像它经常发生的那样。创建一个新问题,其中包含两个不同项目的详细信息,重点关注构建包和依赖项,您可能会很快得到答案。
    猜你喜欢
    • 1970-01-01
    • 2023-03-29
    • 2018-04-30
    • 2017-05-22
    • 1970-01-01
    • 2019-08-23
    • 2015-01-04
    • 1970-01-01
    • 2019-04-21
    相关资源
    最近更新 更多