设置开发环境

为了在 Fluence 平台上开发，我们推荐使用 Fluence CLI。

确保版本兼容性
为了确保 Fluence 协议的所有组件无缝工作，维护各部分版本匹配至关重要。你使用的 Fluence CLI 版本必须与要连接的 Nox 版本兼容。

保持 Fluence CLI 的最新
更新 Fluence CLI 是确保版本兼容性的第一步也是最重要的一步。使用 fluence update 命令来更新 Fluence CLI。此命令的允许参数包括：

dar - 与当前 dar 环境兼容的版本
kras - 与当前 kras 环境兼容的版本
stage - 与当前 stage 环境兼容的版本
main - 主分支的最新构建
例如，如果你在使用 dar 环境，请先运行 fluence update dar。还需要使用 --env 标志选择环境，或在 Fluence 项目内运行 fluence default env dar 以将环境设置为项目的默认环境。

确保依赖项的兼容性
Fluence CLI 包含所有经过测试可以一起正常工作的 Fluence 协议部分的硬编码版本。一般来说，如果你在使用本地 Fluence 网络，一切应该都能正常工作。但是，你可能在项目的 fluence.yaml 配置中指定了与当前 CLI 版本不匹配的依赖项。要将这些依赖项重置为默认版本，请运行：

bash
复制代码
fluence dep r
虽然不是必需的，但每次更新 CLI 时运行此命令是个好习惯，以确保兼容性。高级用户可以运行 fluence dep v 查看所有这些版本。

管理 Fluence CLI 依赖项
Aqua
要安装项目的 Aqua 依赖项，请运行：

bash
复制代码
fluence dep i
你可以安装特定的 Aqua 依赖项：

bash
复制代码
fluence dep i @fluencelabs/aqua-lib@0.9.1
要卸载特定的 Aqua 依赖项，请运行：

bash
复制代码
fluence dep un @fluencelabs/aqua-lib
你也可以直接编辑 fluence.yaml，然后运行 fluence dep i。

高级用户请注意，Aqua 编译器目前依赖 npm 作为其包管理器。如果遇到任何问题，请参阅 npm 文档。Fluence CLI 管理其自己的 npm 版本，因此不需要单独安装 npm。

Rust
Fluence CLI 会尝试在 Linux 和 macOS 上为你安装 Rust。如果你使用 Windows 或者 CLI 无法安装 Rust，请参考 Rust 官方文档进行安装。

Fluence CLI 还会安装所需的 Rust 工具链并添加 wasm32-wasi 目标。如果遇到与 Rust 相关的问题，请尝试以下操作：

确保你没有两个 Rust 安装（例如，通过 rustup 和 brew 在 macOS 上安装）。
手动安装 wasm32-wasi：
bash
复制代码
rustup target add wasm32-wasi
rustup target add wasm32-wasi --toolchain nightly
rustup update
必要时重新安装 Rust。
Marine 和 Mrepl
为了创建和编译你的 Rust 代码到 WASI 并测试生成的 Wasm 模块，你需要 Marine CLI 和 Marine REPL。两个组件都由 Fluence CLI 包装，并从各自的 GitHub 发布版本懒加载。要强制下载，请运行：

bash
复制代码
fluence dep i
高级用户可以在项目中使用 marineVersion 和 mreplVersion 属性覆盖 marine 和 mrepl 版本。如果下载失败，Fluence CLI 将尝试使用 cargo 从源码构建 marine 和 mrepl。

Docker
如果你想使用本地 Fluence 网络，Docker 是必需的，这在将代码部署到远程 dar 或 kras 环境之前测试代码非常有用。使用官方 Docker 文档为你的操作系统安装 Docker Desktop。安装后，在尝试使用以下命令设置本地 Fluence 网络之前，记得运行 Docker：

bash
复制代码
fluence local up
通过遵循这些步骤和指南，你可以为 Fluence 设置并维护一个兼容且高效的开发环境。