【问题标题】:How to compile single file in elixir?如何在 Elixir 中编译单个文件?
【发布时间】:2021-03-05 02:02:38
【问题描述】:

如何在终端文件中编译成可执行的elixir文件?

我读到要编译 elixir 我需要创建新项目。 但是文件,我要编译的是 IO.puts "hello world".

【问题讨论】:

  • 欢迎来到 StackOverflow!为了让我们更好地帮助您,您能否更新您的问题,以便在 minimal, complete, and verifiable example 中显示您的相关代码。如果您可以让我们知道您有什么 tried so far 来解决您的问题,这也会很有帮助。如需更多信息,请参阅关于how to ask good questions的帮助文章,并使用tour of the site
  • 如果你想要一个可执行文件(在不需要 Erlang 运行时的意义上),那么你就不走运了。 Erlang 和 Elixir 都不能创建独立的可执行文件。

标签: elixir


【解决方案1】:

要从 shell 编译,首先创建一个文件:

# module_name.ex
defmodule ModuleName do
  def hello do
    IO.puts "Hello World"
  end
end

然后运行shell并编译:

Interactive Elixir
iex> c("module_name.ex")
[ModuleName]
iex> ModuleName.hello
Hello world!
:ok

代码复制自A Crash Course - Elixir

如果您想使用elixirc,请阅读此答案:https://stackoverflow.com/a/31485826/1173020

【讨论】:

  • 这很酷,但我需要可以从终端运行的字节码。
  • 我给出了另一个答案的链接,它是关于从终端运行代码。
【解决方案2】:

您可以使用elixirc 命令编译一个elixir 文件。

所以如果你有一个名为file.ex的文件,你可以运行:

elixirc file.ex

这将为您文件中定义的每个模块在当前目录中创建一个.beam 文件。如果您在此目录中启动 iex,您的文件中的模块将可用。

Here您可以在官方指南中阅读有关此命令的更多信息。

【讨论】:

    【解决方案3】:

    您也可以从命令行执行。使用 .exs 扩展名 (file.exs) 保存文件。

    例如 file.exs 包含这行代码:

    IO.puts "Hello World"
    

    然后从命令行使用 elixir 执行它,如下所示:

    $ elixir file.exs
    Hello World
    

    Elixir website has helpful instructions

    希望这有帮助!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-12-19
      • 2019-05-18
      • 2016-11-16
      • 1970-01-01
      • 2011-06-25
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      相关资源
      最近更新 更多