我无法创建我的Phoenix项目。希望就如何修复它提供一些建议。
设置详细信息:
[smp:1:1] [ds:1:1:10] [async-threads:1] [hipe]
使用Erlang / OTP 20)
我正在按照Phoenix Up and Running制作应用程序。
mix phx.new hello
cd hello
mix ecto.create
最后一条命令给我:
== Compilation error in file lib/hello/repo.ex ==
** (ArgumentError) adapter Ecto.Adapters.Postgres was not compiled, ensure it is correct and it is included as a project dependency
lib/ecto/repo/supervisor.ex:71: Ecto.Repo.Supervisor.compile_config/2
lib/hello/repo.ex:2: (module)
(stdlib) erl_eval.erl:680: :erl_eval.do_apply/6
(elixir) lib/kernel/parallel_compiler.ex:206: anonymous fn/4 in Kernel.ParallelCompiler.spawn_workers/6
我已经安装了postgres。我有postgres super 用户。
最佳答案
您的依赖项中是否有phoenix_ecto
3.5.0?在我弄清根本问题之前,降级到3.4.0对我来说是一个临时修复程序。
强制降级:
mix deps.clean --all
mix.lock
文件mix.exs
文件,以限制phoenix_ecto
版本。找到合适的行并替换为:{:phoenix_ecto, ">= 3.2.0 and < 3.5.0"},
mix deps.get
或者,如果您刚开始使用Phoenix,则可以使用1.4版进行学习,该版本将很快发布,并且没有此问题。
首先删除您当前的本地Phoenix存档:
mix archive.uninstall phx_new
然后,要安装最新的开发版本,请按照https://github.com/phoenixframework/phoenix/blob/master/installer/README.md中的说明进行操作
关于postgresql - 适配器Ecto.Adapters.Postgres未编译,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53045717/