【发布时间】:2018-01-08 17:49:15
【问题描述】:
在尝试将我的 elixir phoenix Web 应用程序推送到 heroku 时,我遇到了很多问题,需要很长时间才能解决,但在我终于解决之后......我的应用程序将不再启动!
我对灵药和凤凰甚至heroku还是很陌生,所以这对我来说真的是个谜。
运行 mix phoenix.server 时,这是我的输出:
** (UndefinedFunctionError) function Phoenix.Template.hash/2 is undefined or private. Did you mean one of:
* hash/1
(phoenix) Phoenix.Template.hash("web/templates/error", "*")
web/views/error_view.ex:1: Dashboard.ErrorView.__phoenix_recompile__?/0
(elixir) lib/stream.ex:429: anonymous fn/4 in Stream.filter/2
(elixir) lib/enum.ex:3161: Enumerable.List.reduce/3
(elixir) lib/stream.ex:1433: Enumerable.Stream.do_each/4
(elixir) lib/enum.ex:1823: Enum.reverse/1
(elixir) lib/enum.ex:2581: Enum.to_list/1
(phoenix) lib/mix/tasks/compile.phoenix.ex:13: Mix.Tasks.Compile.Phoenix.run/1
(mix) lib/mix/task.ex:301: Mix.Task.run_task/3
(elixir) lib/enum.ex:1255: Enum."-map/2-lists^map/1-0-"/2
(mix) lib/mix/tasks/compile.all.ex:19: anonymous fn/1 in Mix.Tasks.Compile.All.run/1
(mix) lib/mix/tasks/compile.all.ex:37: Mix.Tasks.Compile.All.with_logger_app/1
(mix) lib/mix/task.ex:301: Mix.Task.run_task/3
(mix) lib/mix/tasks/compile.ex:85: Mix.Tasks.Compile.run/1
(mix) lib/mix/task.ex:301: Mix.Task.run_task/3
(mix) lib/mix/tasks/app.start.ex:50: Mix.Tasks.App.Start.run/1
(mix) lib/mix/task.ex:301: Mix.Task.run_task/3
(mix) lib/mix/tasks/run.ex:86: Mix.Tasks.Run.run/5
(mix) lib/mix/tasks/run.ex:54: Mix.Tasks.Run.run/1
现在,我真的不明白这个问题是从哪里来的,这对我来说似乎很困惑,我希望得到一些帮助。
我什至不知道要共享哪些文件,因此您可能可以获得更多信息,但我愿意在我的项目中发布任何代码。
【问题讨论】:
-
看起来 Heroku 正在安装旧版本的 Phoenix,它没有
Phoenix.Template.hash/2。如果您克隆原始 repo 并运行mix deps.get && mix phoenix.server,该应用程序是否可以工作? -
不,克隆原始存储库并运行
mix deps.get && mix phoenix.server不起作用。但是,我现在遇到了另一个错误:== Compilation error in file lib/dashboard/endpoint.ex == ** (CompileError) lib/dashboard/endpoint.ex:1: inlined function current_time/0 undefined (stdlib) lists.erl:1338: :lists.foreach/2 (stdlib) erl_eval.erl:670: :erl_eval.do_apply/6 (elixir) lib/kernel/parallel_compiler.ex:121: anonymous fn/4 in Kernel.ParallelCompiler.spawn_compilers/1
标签: heroku npm elixir phoenix-framework elixir-mix