feat: 生成的配置文件增加 build 字段
This commit is contained in:
parent
707967e62c
commit
0a236d914d
@ -1,6 +1,7 @@
|
|||||||
package org.jcnc.snow.cli.commands;
|
package org.jcnc.snow.cli.commands;
|
||||||
|
|
||||||
import org.jcnc.snow.cli.api.CLICommand;
|
import org.jcnc.snow.cli.api.CLICommand;
|
||||||
|
import org.jcnc.snow.cli.utils.ProjectCloudExample;
|
||||||
|
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
import java.nio.file.Path;
|
import java.nio.file.Path;
|
||||||
@ -60,14 +61,7 @@ public final class InitCommand implements CLICommand {
|
|||||||
Path dir = Paths.get(".").toAbsolutePath();
|
Path dir = Paths.get(".").toAbsolutePath();
|
||||||
Path dsl = dir.resolve("project.cloud");
|
Path dsl = dir.resolve("project.cloud");
|
||||||
if (Files.notExists(dsl)) {
|
if (Files.notExists(dsl)) {
|
||||||
Files.writeString(dsl, """
|
Files.writeString(dsl, ProjectCloudExample.getProjectCloud());
|
||||||
# Generated by snow init
|
|
||||||
project {
|
|
||||||
group = "com.example"
|
|
||||||
artifact = "demo-app"
|
|
||||||
version = "0.0.1-SNAPSHOT"
|
|
||||||
}
|
|
||||||
""");
|
|
||||||
System.out.println("[init] created " + dsl);
|
System.out.println("[init] created " + dsl);
|
||||||
} else {
|
} else {
|
||||||
System.out.println("[init] project.cloud already exists");
|
System.out.println("[init] project.cloud already exists");
|
||||||
|
|||||||
@ -0,0 +1,31 @@
|
|||||||
|
package org.jcnc.snow.cli.utils;
|
||||||
|
|
||||||
|
public class ProjectCloudExample {
|
||||||
|
/**
|
||||||
|
* 工具类构造方法,禁止实例化。
|
||||||
|
*/
|
||||||
|
private ProjectCloudExample() {
|
||||||
|
// 工具类不允许实例化
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取 main.snow 示例模块的内容字符串。
|
||||||
|
*
|
||||||
|
* @return main.snow 示例模块的完整代码
|
||||||
|
*/
|
||||||
|
public static String getProjectCloud() {
|
||||||
|
return """
|
||||||
|
# Generated by snow init
|
||||||
|
project {
|
||||||
|
group = "com.example"
|
||||||
|
artifact = "demo-app"
|
||||||
|
version = "0.0.1-SNAPSHOT"
|
||||||
|
}
|
||||||
|
|
||||||
|
build {
|
||||||
|
srcDir = "src"
|
||||||
|
output = "build/demo-app"
|
||||||
|
}
|
||||||
|
""";
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -1,7 +1,7 @@
|
|||||||
package org.jcnc.snow.pkg.tasks;
|
package org.jcnc.snow.pkg.tasks;
|
||||||
|
|
||||||
import org.jcnc.snow.pkg.model.Project;
|
import org.jcnc.snow.pkg.model.Project;
|
||||||
import org.jcnc.snow.pkg.utils.SnowExampleTemplate;
|
import org.jcnc.snow.pkg.utils.SnowExample;
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.nio.file.Files;
|
import java.nio.file.Files;
|
||||||
@ -69,7 +69,7 @@ public final class GenerateTask implements Task {
|
|||||||
// 创建 src/main.snow 示例入口文件
|
// 创建 src/main.snow 示例入口文件
|
||||||
Path mainSnow = root.resolve("src").resolve("main.snow");
|
Path mainSnow = root.resolve("src").resolve("main.snow");
|
||||||
if (Files.notExists(mainSnow)) {
|
if (Files.notExists(mainSnow)) {
|
||||||
Files.writeString(mainSnow, SnowExampleTemplate.getMainModule());
|
Files.writeString(mainSnow, SnowExample.getMainModule());
|
||||||
System.out.println("[generate] created src/main.snow");
|
System.out.println("[generate] created src/main.snow");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -6,12 +6,12 @@ package org.jcnc.snow.pkg.utils;
|
|||||||
* 用于项目脚手架生成或帮助用户快速上手 .snow 语言。
|
* 用于项目脚手架生成或帮助用户快速上手 .snow 语言。
|
||||||
* </p>
|
* </p>
|
||||||
*/
|
*/
|
||||||
public final class SnowExampleTemplate {
|
public final class SnowExample {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 工具类构造方法,禁止实例化。
|
* 工具类构造方法,禁止实例化。
|
||||||
*/
|
*/
|
||||||
private SnowExampleTemplate() {
|
private SnowExample() {
|
||||||
// 工具类不允许实例化
|
// 工具类不允许实例化
|
||||||
}
|
}
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user