| #set($h1 = '#') |
| #set($h2 = '##') |
| #set($h3 = '###') |
| #set($h4 = '####') |
| |
| |
| $h2 Usage |
| |
| $h3 Validating your HTL Scripts |
| |
| To validate your HTL Scripts you can run the following command: |
| |
| ``` |
| mvn org.apache.sling:htl-maven-plugin:validate |
| ``` |
| |
| This assumes the scripts are found in the `\${project.build.scriptSourceDirectory}` directory. Alternatively, you can configure the folder |
| using the `sourceDirectory` configuration parameter. |
| |
| The command can be simplified to |
| |
| ``` |
| mvn htl:validate |
| ``` |
| |
| if your Maven user settings file provides the following configuration |
| |
| ``` |
| <pluginGroups> |
| <pluginGroup>org.apache.sling</pluginGroup> |
| </pluginGroups> |
| ``` |
| |
| $h3 Configuring the HTL Maven Plugin |
| |
| ``` |
| <project> |
| ... |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.sling</groupId> |
| <artifactId>htl-maven-plugin</artifactId> |
| <version>${project.version}</version> |
| <configuration> |
| <!-- put your configurations here --> |
| </configuration> |
| <executions> |
| <execution> |
| <goals> |
| <goal>validate</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| ... |
| </project> |
| ``` |
| |
| $h3 Generating Java classes from your HTL scripts |
| |
| Since version 1.1.0 it's possible to generate Java classes from the project's HTL scripts. This is useful when you want to identify your |
| script's Java dependencies or precompile scripts. To do this the following configuration should be applied: |
| |
| ``` |
| <project> |
| ... |
| <build> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.sling</groupId> |
| <artifactId>htl-maven-plugin</artifactId> |
| <version>${project.version}</version> |
| <configuration> |
| <!-- put your configurations here --> |
| <failOnWarnings>true</failOnWarnings> |
| <generateJavaClasses>true</generateJavaClasses> |
| </configuration> |
| <executions> |
| <execution> |
| <id>transpile-scripts</id> |
| <goals> |
| <goal>validate</goal> |
| </goals> |
| <phase>generate-sources</phase> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| ... |
| </project> |
| ``` |
| |
| Additionally, the following dependency is needed as part of your project's dependency list: |
| |
| ``` |
| <!-- HTL dependencies needed for the HTL Maven Plugin source code generation --> |
| <dependency> |
| <groupId>org.apache.sling</groupId> |
| <artifactId>org.apache.sling.scripting.sightly.runtime</artifactId> |
| <version>$context.get("sightly.runtime.version")</version> |
| <scope>provided</scope> |
| </dependency> |
| ``` |