使用 Codexe
编译
编译会对项目的当前文件运行一次真实的全新构建(与 Codexe 验证项目时用的是同一种构建),并显示日志、错误和生成的 JAR。
更新于
编译是真实的。当你点击它时,Codexe 会在一个隔离的构建环境中,从零开始构建项目的当前文件。它从不会把之前某次构建缓存的“成功”拿来显示。
构建成功后,你只需一次点击,就能在真实的服务器上试玩这个插件:参见立即试用。
#哪些项目有编译
编译适用于 Java 项目:
| 类型 | 构建工具 |
|---|---|
| Bukkit / Spigot / Paper(Java)、Folia | Maven |
| Bukkit / Spigot / Paper(Kotlin) | Gradle |
| BungeeCord / Velocity | Maven |
| Fabric、Forge | Gradle |
数据包和 Skript 不需要编译。Codexe 会在交付时把它们加载到真实的测试服务器上进行检查(参见数据包和 Skript)。Discord 机器人、网站和 Blockbench 模型没有什么需要编译。
#编译会做什么
- 按项目文件此刻的样子原封不动地取用,包括你自己的修改。
- 根据构建文件中的 Minecraft 版本选择 Java 版本(较旧版本用 Java 17,1.20.5 及更新版本用 21,26.x 用 25),如果项目设置要求更高版本,则使用更高的版本。
- 使用官方仓库中的依赖运行构建(Maven
package或 Gradlebuild)。 - 检查产物是真正的插件或模组:JAR 必须包含编译后的类和正确的描述文件(
plugin.yml、bungee.yml/velocity-plugin.json、fabric.mod.json、mods.toml)。 - 以流式方式输出日志,并在项目聊天中显示结果。
它和 Codexe 在把项目标记为已就绪之前验证时运行的是同一种构建,所以“已就绪”和“编译通过”说的是同一件事。
#已验证的项目与修改过的项目
- 自 Codexe 验证以来没有改动:编译应该会通过,因为同样的文件已经构建成功过。
- 你编辑过文件,或者 AI 在聊天中修改过它们:编译会告诉你新版本能否构建。
#构建成功时
结果中会显示下载 JAR。参见下载。
#构建失败时
结果会列出错误及其所在的文件和行号,外加两个按钮:
- 用 AI 修复:如果文件和 Codexe 交付时完全一样,Codexe 会用内部修复免费修好它们。否则,错误会作为一次普通的后续修改发送到聊天中。参见自动修复。
- 重新检查:再运行一次编译,例如在你编辑了某个文件之后。
#编译消耗 token 吗?
不消耗。编译不使用 token。只有 AI 才消耗 token(生成和聊天消息)。
#限制
- 插件构建 5 分钟后停止,模组构建 10 分钟后停止。第一次构建模组可能需要几分钟,因为 Gradle 和模组工具链要下载它们的依赖。
- 当 Codexe 自己正在验证或修复项目时,编译会暂停。
- 构建在与互联网隔离的环境中运行,只能访问官方依赖仓库,所以从未知网站下载内容的构建脚本会失败。参见安全。