| JVM | Platform | Status |
|---|---|---|
| OpenJDK (Temurin) Current | Linux | |
| OpenJDK (Temurin) LTS | Linux | |
| OpenJDK (Temurin) Current | Windows | |
| OpenJDK (Temurin) LTS | Windows |
The minisite package package implements a trivial replacement for the Maven
site plugin.
- Single-page, static, XHTML 1.0 Strict, Javascript-free sites.
- Optional com.io7m.changelog integration.
- ISC license.
The plugin is designed to produce an extremely simple, static, single-page,
XHTML 1.0 Strict site with no Javascript. The plugin assumes the existence of a
64x64 PNG file at src/site/resources/icon.png.
Add the following execution to the root module in your project:
<build>
<plugins>
<!-- Disable the existing maven-site-plugin -->
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>...</version>
<executions>
<execution>
<id>default-site</id>
<phase>none</phase>
<goals>
<goal>site</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>com.io7m.minisite</groupId>
<artifactId>com.io7m.minisite.maven_plugin</artifactId>
<version>...</version>
<executions>
<execution>
<id>minisite</id>
<phase>site</phase>
<goals>
<goal>generateSite</goal>
</goals>
<configuration>
<headerFile>src/site/resources/header.xml</headerFile>
<overviewFile>src/site/resources/overview.xml</overviewFile>
<featuresFile>src/site/resources/features.xml</featuresFile>
<documentationFile>src/site/resources/documentation.xml</documentationFile>
<changelogFile>README-CHANGES.xml</changelogFile>
<changelogFeedEmail>youremail@example.com</changelogFeedEmail>
<outputDirectory>${project.build.directory}/minisite</outputDirectory>
<resourcesDirectory>${project.base.directory}/src/site/resources</resourcesDirectory>
<cssGenerateDefault>true</cssGenerateDefault>
<cssStyles>
<cssStyle>minisite.css</cssStyle>
<cssStyle>example0.css</cssStyle>
<cssStyle>example1.css</cssStyle>
</cssStyles>
</configuration>
</execution>
</executions>
<inherited>false</inherited>
</plugin>
</plugins>
</build>
By default, the
maven-site-plugin
is bound to the Maven site lifecycle phase, so it's
generally preferred to disable the plugin by explicitly binding it to the
none phase. The minisite
plugin is intended for use with multi-module builds and is designed to run
at most once for the parent module, in contrast to the once-per-module execution
model of the maven-site-plugin. It's therefore recommended
to set inherited to false as
shown so that the plugin won't execute for any child modules.
The overviewFile parameter specifies an XHTML
file that will be inserted into the overview section of
the generated site.
The documentationFile parameter specifies an XHTML
file that will be inserted into the documentation section of
the generated site.
The featuresFile parameter specifies an XHTML
file that will be inserted into the features section of
the generated site.
The headerFile parameter specifies an XHTML
file that will be inserted into the header section of the generated site
(above the logo and title).
The changelogFile parameter specifies an XML
changelog in changelog
format that will be converted into XHTML for the generated site. If no
file is specified, no changes section will be generated.
The changelogFeedEmail parameter the email address
that will be used when generating an RSS feed for the changelog.
The outputDirectory parameter specifies the directory
to which site files will be generated, and resources copied. This parameter is
optional and defaults to ${project.build.directory}/minisite.
The resourcesDirectory parameter specifies the directory
from which site resources will be copied copied. This parameter is
optional and defaults to ${project.base.directory}/src/site/resources.
The cssGenerateDefault parameter specifies that
the plugin should copy a default CSS style to the output directory. The parameter
is optional and defaults to true.
The cssStyles parameter specifies a list of
CSS styles that should be imported by the generated site.
