Gleam Mix 项目教程

Gleam Mix 项目教程

mix_gleam ⚗️ Build Gleam code with mix 项目地址: https://gitcode.com/gh_mirrors/mi/mix_gleam

1. 项目的目录结构及介绍

Gleam Mix 项目的目录结构如下:

.
├── CHANGELOG.md
├── LICENSE
├── README.md
├── formatter.exs
├── gitignore
├── mix.exs
├── mix.lock
├── github
│   └── workflows
├── lib
├── test
└── test_projects
    └── basic_project

目录结构介绍

  • CHANGELOG.md: 记录项目的变更日志。
  • LICENSE: 项目的开源许可证文件,采用 Apache-2.0 许可证。
  • README.md: 项目的介绍文档,包含项目的安装和使用说明。
  • formatter.exs: 格式化配置文件,用于代码格式化。
  • gitignore: Git 忽略文件配置,指定哪些文件或目录不需要被 Git 跟踪。
  • mix.exs: Mix 项目的配置文件,定义项目的依赖、编译器等信息。
  • mix.lock: Mix 锁定文件,记录项目依赖的具体版本。
  • github/workflows: 包含 GitHub Actions 的工作流配置文件。
  • lib: 存放项目的核心代码。
  • test: 存放项目的测试代码。
  • test_projects/basic_project: 包含一个基本的测试项目,用于演示如何集成 Gleam 和 Elixir。

2. 项目的启动文件介绍

Gleam Mix 项目的启动文件是 mix.exs,它是 Elixir 项目的核心配置文件。以下是 mix.exs 文件的主要内容:

defmodule MixGleam.MixProject do
  use Mix.Project

  def project do
    [
      app: :mix_gleam,
      version: "0.6.0",
      elixir: "~> 1.10",
      start_permanent: Mix.env() == :prod,
      deps: deps(),
      archives: [mix_gleam: "~> 0.6"],
      compilers: [:gleam | Mix.compilers()],
      aliases: [
        "deps.get": ["deps.get", "gleam.deps.get"]
      ],
      erlc_paths: [
        "build/dev/erlang/#{@app}/_gleam_artefacts",
        "build/dev/erlang/#{@app}/build"
      ],
      erlc_include_path: "build/dev/erlang/#{@app}/include",
      prune_code_paths: false
    ]
  end

  defp deps do
    [
      {:gleam_stdlib, "~> 0.34 or ~> 1.0"},
      {:gleeunit, "~> 1.0", only: [:dev, :test], runtime: false}
    ]
  end
end

启动文件介绍

  • app: 定义项目的应用名称。
  • version: 定义项目的版本号。
  • elixir: 定义项目所需的 Elixir 版本。
  • start_permanent: 定义项目是否在生产环境中永久启动。
  • deps: 定义项目的依赖项。
  • archives: 定义项目的归档文件。
  • compilers: 定义项目的编译器,包括 Gleam 编译器。
  • aliases: 定义项目的别名,用于自定义 Mix 任务。
  • erlc_paths: 定义 Erlang 编译路径。
  • erlc_include_path: 定义 Erlang 包含路径。
  • prune_code_paths: 定义是否修剪代码路径。

3. 项目的配置文件介绍

Gleam Mix 项目的主要配置文件是 mix.exs,它包含了项目的所有配置信息。以下是 mix.exs 文件的详细介绍:

mix.exs 配置文件介绍

  • app: 定义项目的应用名称,例如 :mix_gleam
  • version: 定义项目的版本号,例如 "0.6.0"
  • elixir: 定义项目所需的 Elixir 版本,例如 "~> 1.10"
  • start_permanent: 定义项目是否在生产环境中永久启动,例如 Mix.env() == :prod
  • deps: 定义项目的依赖项,例如 {:gleam_stdlib, "~> 0.34 or ~> 1.0"}
  • archives: 定义项目的归档文件,例如 [mix_gleam: "~> 0.6"]
  • compilers: 定义项目的编译器,包括 Gleam 编译器,例如 [:gleam | Mix.compilers()]
  • aliases: 定义项目的别名,用于自定义 Mix 任务,例如 ["deps.get": ["deps.get", "gleam.deps.get"]]
  • erlc_paths: 定义 Erlang 编译路径,例如 ["build/dev/erlang/#{@app}/_gleam_artefacts", "build/dev/erlang/#{@app}/build"]
  • erlc_include_path: 定义 Erlang 包含路径,例如 "build/dev/erlang/#{@app}/include"
  • prune_code_paths: 定义是否修剪代码路径,例如 false

通过这些配置,Gleam Mix 项目能够集成 Gleam 和 Elixir,实现跨语言的开发和测试。

mix_gleam ⚗️ Build Gleam code with mix 项目地址: https://gitcode.com/gh_mirrors/mi/mix_gleam

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平依佩Ula

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值