【问题标题】:Elixir 1.4.2 installed, but elixir -v shows 1.3.2. Can't make a new project with Phoenix 1.3Elixir 1.4.2 已安装,但 elixir -v 显示 1.3.2。无法使用 Phoenix 1.3 创建新项目
【发布时间】:2017-03-22 13:32:26
【问题描述】:

我正在尝试在我的终端中运行 mix phx.new <project_name> 来启动一个新的 phoenix 1.3 项目,但我收到了错误消息:

** (Mix) Phoenix v1.3.0-rc.1 requires at least Elixir v1.4.
You have 1.3.2. Please update accordingly

我之前跑brew install elixir获取新版本,再次尝试得到:

Warning: elixir-1.4.2 already installed

但是我运行 elixir -v 它告诉我:

Erlang/OTP 19 [erts-8.0] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false]

Elixir 1.3.2

非常感谢任何帮助我开始跑步的帮助。

【问题讨论】:

  • brew update && brew reinstall elixir ?
  • @Sheharyar 我尝试运行它并得到:==> Reinstalling elixir ==> Downloading https://homebrew.bintray.com/bottles/elixir-1.4.2.sierra.bottle. Already downloaded: /Users/Me/Library/Caches/Homebrew/elixir-1.4.2.sierra.bottle.tar.gz ==> Pouring elixir-1.4.2.sierra.bottle.tar.gz ???? /usr/local/Cellar/elixir/1.4.2: 388 files, 5.5MB 但是当我运行elixir -v 时,我仍然得到它只显示 1.3.2 .不过感谢您的想法!
  • which elixir 的输出是什么?
  • 试试readlink `which elixir`
  • 这意味着您的系统上安装了另一个版本的 elixir。您可以使用readlink 找到它的路径,将其删除,然后使用brew 安装最新版本

标签: elixir phoenix-framework


【解决方案1】:

这可能是因为phoenix-1.3 安装了旧版本的elixir

请考虑为elixir 使用asdf 版本管理器。

安装后,只需添加elixir 插件。 之后,您可以使用asdf global <name> <version> 命令设置版本。 例如asdf global elixir 1.4.2 就完成了。

它只是管理一个简单的.tool-versions 文件来管理版本。

根据我们的经验,它几乎在所有情况下都有效,而homebrewkiex 则存在问题。此外,它适用于 LinuxDockerWindowsMac,因此可以安全地使用它来减少部署时间问题。

如果您想使用homebrew 执行此操作,请先运行where elixir,然后在您的.bash_profile.zsh_profile 文件中相应地设置$PATH 变量。

elixir 设置正确后,请安装最新版本的phoenix(在撰写本文时它是 1.3,您可能需要从存档安装它)。 但我想你已经知道了:)

如果您仍然遇到任何问题,请告诉我们。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-12-01
    • 2014-08-15
    • 1970-01-01
    • 2017-10-21
    • 1970-01-01
    • 1970-01-01
    • 2023-03-26
    • 2018-08-02
    相关资源
    最近更新 更多