2
0
Fork 0
mirror of https://github.com/ethauvin/rife2-hello.git synced 2025-04-24 23:17:13 -07:00

Made "src/main/resources/templates" the only default template dir.

Made the template excludes adapt to the template types that are pre-compiled and use a more restrictive pattern.
This commit is contained in:
Geert Bevin 2023-03-05 10:52:34 -05:00
parent b51e36ee73
commit a3a5c7c380
5 changed files with 7 additions and 16 deletions

View file

@ -6,7 +6,6 @@ public class App extends Site {
public void setup() {
var hello = get("/hello", c -> c.print(c.template("hello")));
get("/", c -> c.redirect(hello));
get("/world", c -> c.print(c.template("world")));
}
public static void main(String[] args) {

View file

@ -1,11 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title><!--v title-->Hello<!--/v--></title>
<link rel="stylesheet" href="{{v webapp:rootUrl/}}css/style.css?{{v context:paramRandom/}}">
</head>
<body>
<p>Hello World from src/main/resources/templates</p>
</body>
</html>

View file

@ -45,7 +45,7 @@ import java.util.Locale;
import java.util.stream.Collectors;
public class Rife2Plugin implements Plugin<Project> {
public static final List<String> DEFAULT_TEMPLATES_DIRS = List.of("src/main/resources/templates", "src/main/templates");
public static final List<String> DEFAULT_TEMPLATES_DIRS = List.of("src/main/resources/templates");
public static final String DEFAULT_GENERATED_RIFE2_CLASSES_DIR = "generated/classes/rife2";
public static final String RIFE2_GROUP = "rife2";
public static final String WEBAPP_SRCDIR = "src/main/webapp";
@ -71,7 +71,7 @@ public class Rife2Plugin implements Plugin<Project> {
exposePrecompiledTemplatesToTestTask(project, configurations, dependencyHandler, precompileTemplates);
configureAgent(project, plugins, rife2Extension, rife2AgentClasspath);
TaskProvider<Jar> uberJarTask = registerUberJarTask(project, plugins, javaPluginExtension, rife2Extension, tasks, precompileTemplates);
bundlePrecompiledTemplatesIntoJarFile(tasks, precompileTemplates);
bundlePrecompiledTemplatesIntoJarFile(tasks, precompileTemplates, rife2Extension);
configureMavenPublishing(project, plugins, configurations, uberJarTask);
}
@ -117,14 +117,16 @@ public class Rife2Plugin implements Plugin<Project> {
}
private static void bundlePrecompiledTemplatesIntoJarFile(TaskContainer tasks,
TaskProvider<PrecompileTemplates> precompileTemplatesTask) {
TaskProvider<PrecompileTemplates> precompileTemplatesTask,
Rife2Extension rife2Extension) {
tasks.named("jar", Jar.class, jar -> {
jar.from(precompileTemplatesTask);
// This isn't great because it needs to be hardcoded, in order to avoid the templates
// declared in `src/main/resources/templates` to be included in the jar file.
// which means that if for whatever reason the user also uses the same directory for
// something else, it will be excluded from the jar file.
jar.exclude("templates");
rife2Extension.getPrecompiledTemplateTypes().get().forEach(templateType -> jar.exclude("/templates/**." + templateType.identifier().toLowerCase())
);
});
}

View file

@ -29,6 +29,7 @@ rife2 {
version = "1.4.0"
useAgent = true
precompiledTemplateTypes.add(TemplateType.HTML)
templateDirectories.from(file("src/main/templates"))
}
dependencies {