diff --git a/src/main/java/org/jcnc/snow/cli/commands/GenerateCommand.java b/src/main/java/org/jcnc/snow/cli/commands/GenerateCommand.java index 8772776..b83a28d 100644 --- a/src/main/java/org/jcnc/snow/cli/commands/GenerateCommand.java +++ b/src/main/java/org/jcnc/snow/cli/commands/GenerateCommand.java @@ -13,31 +13,59 @@ import java.nio.file.Paths; /** * CLI 命令:根据 project.cloud 生成项目目录结构。 + *
+ * 负责解析云项目描述文件,并通过 {@link GenerateTask} + * 在 INIT 生命周期阶段内生成基础目录结构。 + *
* *+ * 用法示例: * $ snow generate ** - * - 若当前目录不存在 project.cloud,则提示先执行 snow init。 - * - 成功后会在控制台输出已创建的目录/文件列表。 + *
+ * 注意事项: + * - 若当前目录不存在 project.cloud,则提示用户先执行 `snow init`。 + * - 执行成功后,会输出已创建的目录/文件。 + *
*/ public final class GenerateCommand implements CLICommand { + /** + * 返回命令名称,用于 CLI 调用。 + * + * @return 命令名称,如 "generate" + */ @Override public String name() { return "generate"; } + /** + * 返回命令简介,用于 CLI 帮助或命令列表展示。 + * + * @return 命令描述字符串 + */ @Override public String description() { return "Generate project directory structure based on project.cloud."; } + /** + * 打印命令用法信息。 + */ @Override public void printUsage() { System.out.println("Usage: snow generate"); } + /** + * 执行生成任务。 + * + * @param args CLI 传入的参数数组(此命令不接受参数) + * @return 执行结果码(0 表示成功,1 表示 project.cloud 缺失) + * @throws Exception 执行过程中出现错误时抛出 + */ @Override public int execute(String[] args) throws Exception { Path dsl = Paths.get("project.cloud");