2017-07-30 153 views
0

所以我有一個phoenix項目,我用作各種測試應用程序。如果我想使用我正在使用的本地版elixir源代碼(並進行更改),我該如何告訴鳳凰使用它?我也希望能夠使用「iex -S mix」。以下elixir: ["~> 1.6.0-dev", path: '/my/local/path/to/elixir']不起作用,但這是我想要做的。如何在mix.exs文件中指向本地elixir版本?

我已經嘗試添加下面,我得到一個語法錯誤。將elixir添加到依賴關係(在def deps函數中)似乎沒有做任何事情。我也使用kiex和kerl進行elixir版本配置。

defmodule PhoenixTestApp.Mixfile do 
    use Mix.Project 

    def project do 
    [ 
     app: :phoenix_testbed, 
     version: "0.0.1", 
     elixir: ["~> 1.6.0-dev", path: '/my/local/path/to/elixir'] 
     elixirc_paths: elixirc_paths(Mix.env), 
     compilers: [:phoenix, :gettext] ++ Mix.compilers, 
     start_permanent: Mix.env == :prod, 
     aliases: aliases(), 
     deps: deps() 
    ] 
    end 
    ## some more default config code generated by Phoenix 
    # : 
    # : 
end 

回答

1

您需要使用本地elixir二進制文件。

例如,而不是iex -S mix phx.server,做$YOUR_LOCAL_ELIXIR_PATH/bin/iex -S mix phx.server。其他的東西,如mix,elixir是一樣的。

1

你的項目是由elixir/iex已經運行,所以有雞還是先有蛋的問題試圖從裏面mix.exs文件中設置elixir/iex版本。

它更多的是操作系統而不是項目的屬性來選擇一個環境。版本管理器有很多不同的版本。我會說(除其他外);

我個人用了後,我很高興。它允許設置每個項目的本地版本(使用本地.exenv文件)全局版本,以及不同版本之間的輕鬆切換。

+0

感謝您的提示! – Nona

相關問題