6

ミックス escript を作成していますが、すべて問題ないように見えますが、生成された escript 実行可能ファイルを呼び出すことができません。

>escript.buildを混ぜる

lib/cmdlineutil.ex:2: warning: variable args is unused
Compiled lib/cmdlineutil.ex 
Generated cmdlineutil.app 
Consolidated Access
Consolidated Collectable 
Consolidated Enumerable 
Consolidated Inspect
Consolidated List.Chars 
Consolidated Range.Iterator 
Consolidated String.Chars 
Consolidated protocols written to _build/dev/consolidated
Generated escript cmdlineutil with MIX_ENV=dev

>cmdlineutil

「cmdlineutil」は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されません。

>mv cmdlineutil cmdlineutil.exe

>cmdlineutil.exe

このバージョンの C:\Git\elixir\cmdlineutil\cmdlineutil.exe は、実行している Windows のバージョンと互換性がありません。コンピュータのシステム情報を確認してから、ソフトウェアの発行元に問い合わせてください。

メッセージボックス:

サポートされていない 16 ビット アプリケーション

プログラムまたは機能 "\??\C:\Git\elixir\cmdlineutil\cmdlineutil.exe" は、64 ビット バージョンの Windows との互換性がないため、起動または実行できません。64 ビット Windows 互換バージョンが利用可能かどうかについては、ソフトウェア ベンダーにお問い合わせください。

lib\cmdlineutil.ex:

defmodule CmdLineUtil.Echo do
    def main(args) do
        IO.puts "Hello!"
    end
end

mix.ex:

defmodule CmdLineUtil.Echo.Mixfile do
  use Mix.Project

  def project do
    [app: :cmdlineutil,
     version: "0.0.1",
     elixir: "~> 1.0.0",
     escript: escript,
     deps: deps]
  end

  def escript do
    [main_module: CmdLineUtil.Echo]
  end

  # Configuration for the OTP application
  #
  # Type `mix help compile.app` for more information
  def application do
    [applications: [:logger]]
  end

  # Dependencies can be Hex packages:
  #
  #   {:mydep, "~> 0.3.0"}
  #
  # Or git/path repositories:
  #
  #   {:mydep, git: "https://github.com/elixir-lang/mydep.git", tag: "0.1.0"}
  #
  # Type `mix help deps` for more examples and options
  defp deps do
    []
  end
end
4

1 に答える 1

14

Erlang と共にインストールされる escript コマンドがあります。

>escript cmdlineutil

于 2014-10-26T14:07:23.923 に答える