1 | |
package org.apache.maven.plugins.site; |
2 | |
|
3 | |
import java.util.ArrayList; |
4 | |
import java.util.Iterator; |
5 | |
import java.util.List; |
6 | |
|
7 | |
import org.apache.maven.plugin.AbstractMojo; |
8 | |
import org.apache.maven.plugin.MojoExecutionException; |
9 | |
|
10 | |
|
11 | |
|
12 | |
|
13 | |
|
14 | |
|
15 | |
|
16 | |
|
17 | |
|
18 | |
|
19 | |
@SuppressWarnings( "all" ) |
20 | 0 | public class HelpMojo |
21 | |
extends AbstractMojo |
22 | |
{ |
23 | |
|
24 | |
|
25 | |
|
26 | |
|
27 | |
|
28 | |
private boolean detail; |
29 | |
|
30 | |
|
31 | |
|
32 | |
|
33 | |
|
34 | |
|
35 | |
private java.lang.String goal; |
36 | |
|
37 | |
|
38 | |
|
39 | |
|
40 | |
|
41 | |
|
42 | |
private int lineLength; |
43 | |
|
44 | |
|
45 | |
|
46 | |
|
47 | |
|
48 | |
|
49 | |
private int indentSize; |
50 | |
|
51 | |
|
52 | |
|
53 | |
public void execute() |
54 | |
throws MojoExecutionException |
55 | |
{ |
56 | 0 | if ( lineLength <= 0 ) |
57 | |
{ |
58 | 0 | getLog().warn( "The parameter 'lineLength' should be positive, using '80' as default." ); |
59 | 0 | lineLength = 80; |
60 | |
} |
61 | 0 | if ( indentSize <= 0 ) |
62 | |
{ |
63 | 0 | getLog().warn( "The parameter 'indentSize' should be positive, using '2' as default." ); |
64 | 0 | indentSize = 2; |
65 | |
} |
66 | |
|
67 | 0 | StringBuffer sb = new StringBuffer(); |
68 | |
|
69 | 0 | append( sb, "org.apache.maven.plugins:maven-site-plugin:3.1", 0 ); |
70 | 0 | append( sb, "", 0 ); |
71 | |
|
72 | 0 | append( sb, "Maven Site Plugin 3", 0 ); |
73 | 0 | append( sb, "The Maven Site Plugin is a plugin that generates a site for the current project.", 1 ); |
74 | 0 | append( sb, "", 0 ); |
75 | |
|
76 | 0 | if ( goal == null || goal.length() <= 0 ) |
77 | |
{ |
78 | 0 | append( sb, "This plugin has 9 goals:", 0 ); |
79 | 0 | append( sb, "", 0 ); |
80 | |
} |
81 | |
|
82 | 0 | if ( goal == null || goal.length() <= 0 || "attach-descriptor".equals( goal ) ) |
83 | |
{ |
84 | 0 | append( sb, "site:attach-descriptor", 0 ); |
85 | 0 | append( sb, "Adds the site descriptor (site.xml) to the list of files to be installed/deployed.\nFor Maven-2.x this is enabled by default only when the project has pom packaging since it will be used by modules inheriting, but this can be enabled for other projects packaging if needed.\nThis default execution has been removed from the built-in lifecycle of Maven 3.x for pom-projects. Users that actually use those projects to provide a common site descriptor for sub modules will need to explicitly define this goal execution to restore the intended behavior.", 1 ); |
86 | 0 | append( sb, "", 0 ); |
87 | 0 | if ( detail ) |
88 | |
{ |
89 | 0 | append( sb, "Available parameters:", 1 ); |
90 | 0 | append( sb, "", 0 ); |
91 | |
|
92 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
93 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
94 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
95 | 0 | append( sb, "", 0 ); |
96 | |
|
97 | 0 | append( sb, "locales", 2 ); |
98 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
99 | 0 | append( sb, "Expression: ${locales}", 3 ); |
100 | 0 | append( sb, "", 0 ); |
101 | |
|
102 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
103 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
104 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
105 | 0 | append( sb, "", 0 ); |
106 | |
|
107 | 0 | append( sb, "pomPackagingOnly (Default: true)", 2 ); |
108 | 0 | append( sb, "(no description available)", 3 ); |
109 | 0 | append( sb, "", 0 ); |
110 | |
|
111 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
112 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
113 | 0 | append( sb, "", 0 ); |
114 | |
} |
115 | |
} |
116 | |
|
117 | 0 | if ( goal == null || goal.length() <= 0 || "deploy".equals( goal ) ) |
118 | |
{ |
119 | 0 | append( sb, "site:deploy", 0 ); |
120 | 0 | append( sb, "Deploys the generated site using wagon supported protocols to the site URL specified in the <distributionManagement> section of the POM.\nFor scp protocol, the website files are packaged by wagon into zip archive, then the archive is transfered to the remote host, next it is un-archived which is much faster than making a file by file copy.\n", 1 ); |
121 | 0 | append( sb, "", 0 ); |
122 | 0 | if ( detail ) |
123 | |
{ |
124 | 0 | append( sb, "Available parameters:", 1 ); |
125 | 0 | append( sb, "", 0 ); |
126 | |
|
127 | 0 | append( sb, "chmod (Default: true)", 2 ); |
128 | 0 | append( sb, "Whether to run the \'chmod\' command on the remote site after the deploy. Defaults to \'true\'.", 3 ); |
129 | 0 | append( sb, "Expression: ${maven.site.chmod}", 3 ); |
130 | 0 | append( sb, "", 0 ); |
131 | |
|
132 | 0 | append( sb, "chmodMode (Default: g+w,a+rX)", 2 ); |
133 | 0 | append( sb, "The mode used by the \'chmod\' command. Only used if chmod = true. Defaults to \'g+w,a+rX\'.", 3 ); |
134 | 0 | append( sb, "Expression: ${maven.site.chmod.mode}", 3 ); |
135 | 0 | append( sb, "", 0 ); |
136 | |
|
137 | 0 | append( sb, "chmodOptions (Default: -Rf)", 2 ); |
138 | 0 | append( sb, "The options used by the \'chmod\' command. Only used if chmod = true. Defaults to \'-Rf\'.", 3 ); |
139 | 0 | append( sb, "Expression: ${maven.site.chmod.options}", 3 ); |
140 | 0 | append( sb, "", 0 ); |
141 | |
|
142 | 0 | append( sb, "inputDirectory", 2 ); |
143 | 0 | append( sb, "Directory containing the generated project sites and report distributions.", 3 ); |
144 | 0 | append( sb, "Required: Yes", 3 ); |
145 | 0 | append( sb, "Expression: ${project.reporting.outputDirectory}", 3 ); |
146 | 0 | append( sb, "", 0 ); |
147 | |
|
148 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
149 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
150 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
151 | 0 | append( sb, "", 0 ); |
152 | |
|
153 | 0 | append( sb, "locales", 2 ); |
154 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
155 | 0 | append( sb, "Expression: ${locales}", 3 ); |
156 | 0 | append( sb, "", 0 ); |
157 | |
|
158 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
159 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
160 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
161 | 0 | append( sb, "", 0 ); |
162 | |
|
163 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
164 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
165 | 0 | append( sb, "", 0 ); |
166 | |
|
167 | 0 | append( sb, "skipDeploy (Default: false)", 2 ); |
168 | 0 | append( sb, "Set this to \'true\' to skip site deployment.", 3 ); |
169 | 0 | append( sb, "Expression: ${maven.site.deploy.skip}", 3 ); |
170 | 0 | append( sb, "", 0 ); |
171 | |
} |
172 | |
} |
173 | |
|
174 | 0 | if ( goal == null || goal.length() <= 0 || "effective-site".equals( goal ) ) |
175 | |
{ |
176 | 0 | append( sb, "site:effective-site", 0 ); |
177 | 0 | append( sb, "Displays the effective site descriptor as an XML for this build, after inheritance and interpolation of site.xml.", 1 ); |
178 | 0 | append( sb, "", 0 ); |
179 | 0 | if ( detail ) |
180 | |
{ |
181 | 0 | append( sb, "Available parameters:", 1 ); |
182 | 0 | append( sb, "", 0 ); |
183 | |
|
184 | 0 | append( sb, "attributes", 2 ); |
185 | 0 | append( sb, "Additional template properties for rendering the site. See Doxia Site Renderer.", 3 ); |
186 | 0 | append( sb, "", 0 ); |
187 | |
|
188 | 0 | append( sb, "generatedSiteDirectory (Default: ${project.build.directory}/generated-site)", 2 ); |
189 | 0 | append( sb, "Directory containing generated documentation. This is used to pick up other source docs that might have been generated at build time.", 3 ); |
190 | 0 | append( sb, "", 0 ); |
191 | |
|
192 | 0 | append( sb, "generateProjectInfo (Default: true)", 2 ); |
193 | 0 | append( sb, "Whether to generate the summary page for project reports: project-info.html.", 3 ); |
194 | 0 | append( sb, "Expression: ${generateProjectInfo}", 3 ); |
195 | 0 | append( sb, "", 0 ); |
196 | |
|
197 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
198 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
199 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
200 | 0 | append( sb, "", 0 ); |
201 | |
|
202 | 0 | append( sb, "locales", 2 ); |
203 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
204 | 0 | append( sb, "Expression: ${locales}", 3 ); |
205 | 0 | append( sb, "", 0 ); |
206 | |
|
207 | 0 | append( sb, "moduleExcludes", 2 ); |
208 | 0 | append( sb, "Module type exclusion mappings ex: fml -> **/*-m1.fml (excludes fml files ending in \'-m1.fml\' recursively) The configuration looks like this:\n\u00a0\u00a0<moduleExcludes>\n\u00a0\u00a0\u00a0\u00a0<moduleType>filename1.ext,**/*sample.ext</moduleType>\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0moduleType\u00a0can\u00a0be\u00a0one\u00a0of\u00a0\'apt\',\u00a0\'fml\'\u00a0or\u00a0\'xdoc\'.\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0The\u00a0value\u00a0is\u00a0a\u00a0comma\u00a0separated\u00a0list\u00a0of\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0filenames\u00a0or\u00a0fileset\u00a0patterns.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0Here\'s\u00a0an\u00a0example:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<xdoc>changes.xml,navigation.xml</xdoc>\n\u00a0\u00a0</moduleExcludes>\n", 3 ); |
209 | 0 | append( sb, "", 0 ); |
210 | |
|
211 | 0 | append( sb, "output", 2 ); |
212 | 0 | append( sb, "Optional parameter to write the output of this help in a given file, instead of writing to the console.\nNote: Could be a relative path.", 3 ); |
213 | 0 | append( sb, "Expression: ${output}", 3 ); |
214 | 0 | append( sb, "", 0 ); |
215 | |
|
216 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
217 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
218 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
219 | 0 | append( sb, "", 0 ); |
220 | |
|
221 | 0 | append( sb, "relativizeDecorationLinks (Default: true)", 2 ); |
222 | 0 | append( sb, "Make links in the site descriptor relative to the project URL. By default, any absolute links that appear in the site descriptor, e.g. banner hrefs, breadcrumbs, menu links, etc., will be made relative to project.url. Links will not be changed if this is set to false, or if the project has no URL defined.", 3 ); |
223 | 0 | append( sb, "Expression: ${relativizeDecorationLinks}", 3 ); |
224 | 0 | append( sb, "", 0 ); |
225 | |
|
226 | 0 | append( sb, "reportPlugins", 2 ); |
227 | 0 | append( sb, "Configuration section used internally by Maven 3.\n\nMore details available here: http://maven.apache.org/plugins/maven-site-plugin/maven-3.html#Configuration_formats\n\nNote: using this field is not mandatory with Maven 3 as Maven core injects usual <reporting> section into this field.\n", 3 ); |
228 | 0 | append( sb, "", 0 ); |
229 | |
|
230 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
231 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
232 | 0 | append( sb, "", 0 ); |
233 | |
|
234 | 0 | append( sb, "template", 2 ); |
235 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
236 | 0 | append( sb, "", 0 ); |
237 | 0 | append( sb, "Default template page.", 3 ); |
238 | 0 | append( sb, "Expression: ${template}", 3 ); |
239 | 0 | append( sb, "", 0 ); |
240 | |
|
241 | 0 | append( sb, "templateDirectory (Default: src/site)", 2 ); |
242 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
243 | 0 | append( sb, "", 0 ); |
244 | 0 | append( sb, "Directory containing the template page.", 3 ); |
245 | 0 | append( sb, "Expression: ${templateDirectory}", 3 ); |
246 | 0 | append( sb, "", 0 ); |
247 | |
|
248 | 0 | append( sb, "templateFile", 2 ); |
249 | 0 | append( sb, "The location of a Velocity template file to use. When used, skins and the default templates, CSS and images are disabled. It is highly recommended that you package this as a skin instead.", 3 ); |
250 | 0 | append( sb, "Expression: ${templateFile}", 3 ); |
251 | 0 | append( sb, "", 0 ); |
252 | |
|
253 | 0 | append( sb, "xdocDirectory (Default: ${basedir}/xdocs)", 2 ); |
254 | 0 | append( sb, "Deprecated. use the standard m2 directory layout", 3 ); |
255 | 0 | append( sb, "", 0 ); |
256 | 0 | append( sb, "Alternative directory for xdoc source, useful for m1 to m2 migration", 3 ); |
257 | 0 | append( sb, "", 0 ); |
258 | |
} |
259 | |
} |
260 | |
|
261 | 0 | if ( goal == null || goal.length() <= 0 || "help".equals( goal ) ) |
262 | |
{ |
263 | 0 | append( sb, "site:help", 0 ); |
264 | 0 | append( sb, "Display help information on maven-site-plugin.\nCall\n\u00a0\u00a0mvn\u00a0site:help\u00a0-Ddetail=true\u00a0-Dgoal=<goal-name>\nto display parameter details.", 1 ); |
265 | 0 | append( sb, "", 0 ); |
266 | 0 | if ( detail ) |
267 | |
{ |
268 | 0 | append( sb, "Available parameters:", 1 ); |
269 | 0 | append( sb, "", 0 ); |
270 | |
|
271 | 0 | append( sb, "detail (Default: false)", 2 ); |
272 | 0 | append( sb, "If true, display all settable properties for each goal.", 3 ); |
273 | 0 | append( sb, "Expression: ${detail}", 3 ); |
274 | 0 | append( sb, "", 0 ); |
275 | |
|
276 | 0 | append( sb, "goal", 2 ); |
277 | 0 | append( sb, "The name of the goal for which to show help. If unspecified, all goals will be displayed.", 3 ); |
278 | 0 | append( sb, "Expression: ${goal}", 3 ); |
279 | 0 | append( sb, "", 0 ); |
280 | |
|
281 | 0 | append( sb, "indentSize (Default: 2)", 2 ); |
282 | 0 | append( sb, "The number of spaces per indentation level, should be positive.", 3 ); |
283 | 0 | append( sb, "Expression: ${indentSize}", 3 ); |
284 | 0 | append( sb, "", 0 ); |
285 | |
|
286 | 0 | append( sb, "lineLength (Default: 80)", 2 ); |
287 | 0 | append( sb, "The maximum length of a display line, should be positive.", 3 ); |
288 | 0 | append( sb, "Expression: ${lineLength}", 3 ); |
289 | 0 | append( sb, "", 0 ); |
290 | |
} |
291 | |
} |
292 | |
|
293 | 0 | if ( goal == null || goal.length() <= 0 || "jar".equals( goal ) ) |
294 | |
{ |
295 | 0 | append( sb, "site:jar", 0 ); |
296 | 0 | append( sb, "Bundles the site output into a JAR so that it can be deployed to a repository.", 1 ); |
297 | 0 | append( sb, "", 0 ); |
298 | 0 | if ( detail ) |
299 | |
{ |
300 | 0 | append( sb, "Available parameters:", 1 ); |
301 | 0 | append( sb, "", 0 ); |
302 | |
|
303 | 0 | append( sb, "archive", 2 ); |
304 | 0 | append( sb, "The archive configuration to use. See Maven Archiver Reference.", 3 ); |
305 | 0 | append( sb, "", 0 ); |
306 | |
|
307 | 0 | append( sb, "archiveExcludes", 2 ); |
308 | 0 | append( sb, "List of files to exclude. Specified as file set patterns which are relative to the input directory whose contents is being packaged into the JAR.", 3 ); |
309 | 0 | append( sb, "", 0 ); |
310 | |
|
311 | 0 | append( sb, "archiveIncludes", 2 ); |
312 | 0 | append( sb, "List of files to include. Specified as file set patterns which are relative to the input directory whose contents is being packaged into the JAR.", 3 ); |
313 | 0 | append( sb, "", 0 ); |
314 | |
|
315 | 0 | append( sb, "attach (Default: true)", 2 ); |
316 | 0 | append( sb, "Specifies whether to attach the generated artifact to the project.", 3 ); |
317 | 0 | append( sb, "Expression: ${site.attach}", 3 ); |
318 | 0 | append( sb, "", 0 ); |
319 | |
|
320 | 0 | append( sb, "attributes", 2 ); |
321 | 0 | append( sb, "Additional template properties for rendering the site. See Doxia Site Renderer.", 3 ); |
322 | 0 | append( sb, "", 0 ); |
323 | |
|
324 | 0 | append( sb, "finalName", 2 ); |
325 | 0 | append( sb, "Specifies the filename that will be used for the generated jar file. Please note that \'-site\' will be appended to the file name.", 3 ); |
326 | 0 | append( sb, "Required: Yes", 3 ); |
327 | 0 | append( sb, "Expression: ${project.build.finalName}", 3 ); |
328 | 0 | append( sb, "", 0 ); |
329 | |
|
330 | 0 | append( sb, "generatedSiteDirectory (Default: ${project.build.directory}/generated-site)", 2 ); |
331 | 0 | append( sb, "Directory containing generated documentation. This is used to pick up other source docs that might have been generated at build time.", 3 ); |
332 | 0 | append( sb, "", 0 ); |
333 | |
|
334 | 0 | append( sb, "generateProjectInfo (Default: true)", 2 ); |
335 | 0 | append( sb, "Whether to generate the summary page for project reports: project-info.html.", 3 ); |
336 | 0 | append( sb, "Expression: ${generateProjectInfo}", 3 ); |
337 | 0 | append( sb, "", 0 ); |
338 | |
|
339 | 0 | append( sb, "generateReports (Default: true)", 2 ); |
340 | 0 | append( sb, "Convenience parameter that allows you to disable report generation.", 3 ); |
341 | 0 | append( sb, "Expression: ${generateReports}", 3 ); |
342 | 0 | append( sb, "", 0 ); |
343 | |
|
344 | 0 | append( sb, "generateSitemap (Default: false)", 2 ); |
345 | 0 | append( sb, "Generate a sitemap. The result will be a \'sitemap.html\' file at the site root.", 3 ); |
346 | 0 | append( sb, "Expression: ${generateSitemap}", 3 ); |
347 | 0 | append( sb, "", 0 ); |
348 | |
|
349 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
350 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
351 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
352 | 0 | append( sb, "", 0 ); |
353 | |
|
354 | 0 | append( sb, "jarOutputDirectory", 2 ); |
355 | 0 | append( sb, "Specifies the directory where the generated jar file will be put.", 3 ); |
356 | 0 | append( sb, "Required: Yes", 3 ); |
357 | 0 | append( sb, "Expression: ${project.build.directory}", 3 ); |
358 | 0 | append( sb, "", 0 ); |
359 | |
|
360 | 0 | append( sb, "locales", 2 ); |
361 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
362 | 0 | append( sb, "Expression: ${locales}", 3 ); |
363 | 0 | append( sb, "", 0 ); |
364 | |
|
365 | 0 | append( sb, "moduleExcludes", 2 ); |
366 | 0 | append( sb, "Module type exclusion mappings ex: fml -> **/*-m1.fml (excludes fml files ending in \'-m1.fml\' recursively) The configuration looks like this:\n\u00a0\u00a0<moduleExcludes>\n\u00a0\u00a0\u00a0\u00a0<moduleType>filename1.ext,**/*sample.ext</moduleType>\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0moduleType\u00a0can\u00a0be\u00a0one\u00a0of\u00a0\'apt\',\u00a0\'fml\'\u00a0or\u00a0\'xdoc\'.\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0The\u00a0value\u00a0is\u00a0a\u00a0comma\u00a0separated\u00a0list\u00a0of\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0filenames\u00a0or\u00a0fileset\u00a0patterns.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0Here\'s\u00a0an\u00a0example:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<xdoc>changes.xml,navigation.xml</xdoc>\n\u00a0\u00a0</moduleExcludes>\n", 3 ); |
367 | 0 | append( sb, "", 0 ); |
368 | |
|
369 | 0 | append( sb, "outputDirectory (Default: ${project.reporting.outputDirectory})", 2 ); |
370 | 0 | append( sb, "Directory where the project sites and report distributions will be generated.", 3 ); |
371 | 0 | append( sb, "Expression: ${siteOutputDirectory}", 3 ); |
372 | 0 | append( sb, "", 0 ); |
373 | |
|
374 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
375 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
376 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
377 | 0 | append( sb, "", 0 ); |
378 | |
|
379 | 0 | append( sb, "relativizeDecorationLinks (Default: true)", 2 ); |
380 | 0 | append( sb, "Make links in the site descriptor relative to the project URL. By default, any absolute links that appear in the site descriptor, e.g. banner hrefs, breadcrumbs, menu links, etc., will be made relative to project.url. Links will not be changed if this is set to false, or if the project has no URL defined.", 3 ); |
381 | 0 | append( sb, "Expression: ${relativizeDecorationLinks}", 3 ); |
382 | 0 | append( sb, "", 0 ); |
383 | |
|
384 | 0 | append( sb, "reportPlugins", 2 ); |
385 | 0 | append( sb, "Configuration section used internally by Maven 3.\n\nMore details available here: http://maven.apache.org/plugins/maven-site-plugin/maven-3.html#Configuration_formats\n\nNote: using this field is not mandatory with Maven 3 as Maven core injects usual <reporting> section into this field.\n", 3 ); |
386 | 0 | append( sb, "", 0 ); |
387 | |
|
388 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
389 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
390 | 0 | append( sb, "", 0 ); |
391 | |
|
392 | 0 | append( sb, "skip (Default: false)", 2 ); |
393 | 0 | append( sb, "Set this to \'true\' to skip site generation.", 3 ); |
394 | 0 | append( sb, "Expression: ${maven.site.skip}", 3 ); |
395 | 0 | append( sb, "", 0 ); |
396 | |
|
397 | 0 | append( sb, "template", 2 ); |
398 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
399 | 0 | append( sb, "", 0 ); |
400 | 0 | append( sb, "Default template page.", 3 ); |
401 | 0 | append( sb, "Expression: ${template}", 3 ); |
402 | 0 | append( sb, "", 0 ); |
403 | |
|
404 | 0 | append( sb, "templateDirectory (Default: src/site)", 2 ); |
405 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
406 | 0 | append( sb, "", 0 ); |
407 | 0 | append( sb, "Directory containing the template page.", 3 ); |
408 | 0 | append( sb, "Expression: ${templateDirectory}", 3 ); |
409 | 0 | append( sb, "", 0 ); |
410 | |
|
411 | 0 | append( sb, "templateFile", 2 ); |
412 | 0 | append( sb, "The location of a Velocity template file to use. When used, skins and the default templates, CSS and images are disabled. It is highly recommended that you package this as a skin instead.", 3 ); |
413 | 0 | append( sb, "Expression: ${templateFile}", 3 ); |
414 | 0 | append( sb, "", 0 ); |
415 | |
|
416 | 0 | append( sb, "validate (Default: false)", 2 ); |
417 | 0 | append( sb, "Whether to validate xml input documents. If set to true, all input documents in xml format (in particular xdoc and fml) will be validated and any error will lead to a build failure.", 3 ); |
418 | 0 | append( sb, "Expression: ${validate}", 3 ); |
419 | 0 | append( sb, "", 0 ); |
420 | |
|
421 | 0 | append( sb, "xdocDirectory (Default: ${basedir}/xdocs)", 2 ); |
422 | 0 | append( sb, "Deprecated. use the standard m2 directory layout", 3 ); |
423 | 0 | append( sb, "", 0 ); |
424 | 0 | append( sb, "Alternative directory for xdoc source, useful for m1 to m2 migration", 3 ); |
425 | 0 | append( sb, "", 0 ); |
426 | |
} |
427 | |
} |
428 | |
|
429 | 0 | if ( goal == null || goal.length() <= 0 || "run".equals( goal ) ) |
430 | |
{ |
431 | 0 | append( sb, "site:run", 0 ); |
432 | 0 | append( sb, "Starts the site up, rendering documents as requested for faster editing. It uses Jetty as the web server.", 1 ); |
433 | 0 | append( sb, "", 0 ); |
434 | 0 | if ( detail ) |
435 | |
{ |
436 | 0 | append( sb, "Available parameters:", 1 ); |
437 | 0 | append( sb, "", 0 ); |
438 | |
|
439 | 0 | append( sb, "attributes", 2 ); |
440 | 0 | append( sb, "Additional template properties for rendering the site. See Doxia Site Renderer.", 3 ); |
441 | 0 | append( sb, "", 0 ); |
442 | |
|
443 | 0 | append( sb, "generatedSiteDirectory (Default: ${project.build.directory}/generated-site)", 2 ); |
444 | 0 | append( sb, "Directory containing generated documentation. This is used to pick up other source docs that might have been generated at build time.", 3 ); |
445 | 0 | append( sb, "", 0 ); |
446 | |
|
447 | 0 | append( sb, "generateProjectInfo (Default: true)", 2 ); |
448 | 0 | append( sb, "Whether to generate the summary page for project reports: project-info.html.", 3 ); |
449 | 0 | append( sb, "Expression: ${generateProjectInfo}", 3 ); |
450 | 0 | append( sb, "", 0 ); |
451 | |
|
452 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
453 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
454 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
455 | 0 | append( sb, "", 0 ); |
456 | |
|
457 | 0 | append( sb, "locales", 2 ); |
458 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
459 | 0 | append( sb, "Expression: ${locales}", 3 ); |
460 | 0 | append( sb, "", 0 ); |
461 | |
|
462 | 0 | append( sb, "moduleExcludes", 2 ); |
463 | 0 | append( sb, "Module type exclusion mappings ex: fml -> **/*-m1.fml (excludes fml files ending in \'-m1.fml\' recursively) The configuration looks like this:\n\u00a0\u00a0<moduleExcludes>\n\u00a0\u00a0\u00a0\u00a0<moduleType>filename1.ext,**/*sample.ext</moduleType>\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0moduleType\u00a0can\u00a0be\u00a0one\u00a0of\u00a0\'apt\',\u00a0\'fml\'\u00a0or\u00a0\'xdoc\'.\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0The\u00a0value\u00a0is\u00a0a\u00a0comma\u00a0separated\u00a0list\u00a0of\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0filenames\u00a0or\u00a0fileset\u00a0patterns.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0Here\'s\u00a0an\u00a0example:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<xdoc>changes.xml,navigation.xml</xdoc>\n\u00a0\u00a0</moduleExcludes>\n", 3 ); |
464 | 0 | append( sb, "", 0 ); |
465 | |
|
466 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
467 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
468 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
469 | 0 | append( sb, "", 0 ); |
470 | |
|
471 | 0 | append( sb, "port (Default: 8080)", 2 ); |
472 | 0 | append( sb, "The port to execute the HTTP server on.", 3 ); |
473 | 0 | append( sb, "Expression: ${port}", 3 ); |
474 | 0 | append( sb, "", 0 ); |
475 | |
|
476 | 0 | append( sb, "relativizeDecorationLinks (Default: true)", 2 ); |
477 | 0 | append( sb, "Make links in the site descriptor relative to the project URL. By default, any absolute links that appear in the site descriptor, e.g. banner hrefs, breadcrumbs, menu links, etc., will be made relative to project.url. Links will not be changed if this is set to false, or if the project has no URL defined.", 3 ); |
478 | 0 | append( sb, "Expression: ${relativizeDecorationLinks}", 3 ); |
479 | 0 | append( sb, "", 0 ); |
480 | |
|
481 | 0 | append( sb, "reportPlugins", 2 ); |
482 | 0 | append( sb, "Configuration section used internally by Maven 3.\n\nMore details available here: http://maven.apache.org/plugins/maven-site-plugin/maven-3.html#Configuration_formats\n\nNote: using this field is not mandatory with Maven 3 as Maven core injects usual <reporting> section into this field.\n", 3 ); |
483 | 0 | append( sb, "", 0 ); |
484 | |
|
485 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
486 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
487 | 0 | append( sb, "", 0 ); |
488 | |
|
489 | 0 | append( sb, "template", 2 ); |
490 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
491 | 0 | append( sb, "", 0 ); |
492 | 0 | append( sb, "Default template page.", 3 ); |
493 | 0 | append( sb, "Expression: ${template}", 3 ); |
494 | 0 | append( sb, "", 0 ); |
495 | |
|
496 | 0 | append( sb, "templateDirectory (Default: src/site)", 2 ); |
497 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
498 | 0 | append( sb, "", 0 ); |
499 | 0 | append( sb, "Directory containing the template page.", 3 ); |
500 | 0 | append( sb, "Expression: ${templateDirectory}", 3 ); |
501 | 0 | append( sb, "", 0 ); |
502 | |
|
503 | 0 | append( sb, "templateFile", 2 ); |
504 | 0 | append( sb, "The location of a Velocity template file to use. When used, skins and the default templates, CSS and images are disabled. It is highly recommended that you package this as a skin instead.", 3 ); |
505 | 0 | append( sb, "Expression: ${templateFile}", 3 ); |
506 | 0 | append( sb, "", 0 ); |
507 | |
|
508 | 0 | append( sb, "tempWebappDirectory", 2 ); |
509 | 0 | append( sb, "Where to create the dummy web application.", 3 ); |
510 | 0 | append( sb, "Expression: ${project.build.directory}/site-webapp", 3 ); |
511 | 0 | append( sb, "", 0 ); |
512 | |
|
513 | 0 | append( sb, "xdocDirectory (Default: ${basedir}/xdocs)", 2 ); |
514 | 0 | append( sb, "Deprecated. use the standard m2 directory layout", 3 ); |
515 | 0 | append( sb, "", 0 ); |
516 | 0 | append( sb, "Alternative directory for xdoc source, useful for m1 to m2 migration", 3 ); |
517 | 0 | append( sb, "", 0 ); |
518 | |
} |
519 | |
} |
520 | |
|
521 | 0 | if ( goal == null || goal.length() <= 0 || "site".equals( goal ) ) |
522 | |
{ |
523 | 0 | append( sb, "site:site", 0 ); |
524 | 0 | append( sb, "Generates the site for a single project.\nNote that links between module sites in a multi module build will not work.\n", 1 ); |
525 | 0 | append( sb, "", 0 ); |
526 | 0 | if ( detail ) |
527 | |
{ |
528 | 0 | append( sb, "Available parameters:", 1 ); |
529 | 0 | append( sb, "", 0 ); |
530 | |
|
531 | 0 | append( sb, "attributes", 2 ); |
532 | 0 | append( sb, "Additional template properties for rendering the site. See Doxia Site Renderer.", 3 ); |
533 | 0 | append( sb, "", 0 ); |
534 | |
|
535 | 0 | append( sb, "generatedSiteDirectory (Default: ${project.build.directory}/generated-site)", 2 ); |
536 | 0 | append( sb, "Directory containing generated documentation. This is used to pick up other source docs that might have been generated at build time.", 3 ); |
537 | 0 | append( sb, "", 0 ); |
538 | |
|
539 | 0 | append( sb, "generateProjectInfo (Default: true)", 2 ); |
540 | 0 | append( sb, "Whether to generate the summary page for project reports: project-info.html.", 3 ); |
541 | 0 | append( sb, "Expression: ${generateProjectInfo}", 3 ); |
542 | 0 | append( sb, "", 0 ); |
543 | |
|
544 | 0 | append( sb, "generateReports (Default: true)", 2 ); |
545 | 0 | append( sb, "Convenience parameter that allows you to disable report generation.", 3 ); |
546 | 0 | append( sb, "Expression: ${generateReports}", 3 ); |
547 | 0 | append( sb, "", 0 ); |
548 | |
|
549 | 0 | append( sb, "generateSitemap (Default: false)", 2 ); |
550 | 0 | append( sb, "Generate a sitemap. The result will be a \'sitemap.html\' file at the site root.", 3 ); |
551 | 0 | append( sb, "Expression: ${generateSitemap}", 3 ); |
552 | 0 | append( sb, "", 0 ); |
553 | |
|
554 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
555 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
556 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
557 | 0 | append( sb, "", 0 ); |
558 | |
|
559 | 0 | append( sb, "locales", 2 ); |
560 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
561 | 0 | append( sb, "Expression: ${locales}", 3 ); |
562 | 0 | append( sb, "", 0 ); |
563 | |
|
564 | 0 | append( sb, "moduleExcludes", 2 ); |
565 | 0 | append( sb, "Module type exclusion mappings ex: fml -> **/*-m1.fml (excludes fml files ending in \'-m1.fml\' recursively) The configuration looks like this:\n\u00a0\u00a0<moduleExcludes>\n\u00a0\u00a0\u00a0\u00a0<moduleType>filename1.ext,**/*sample.ext</moduleType>\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0moduleType\u00a0can\u00a0be\u00a0one\u00a0of\u00a0\'apt\',\u00a0\'fml\'\u00a0or\u00a0\'xdoc\'.\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0The\u00a0value\u00a0is\u00a0a\u00a0comma\u00a0separated\u00a0list\u00a0of\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0filenames\u00a0or\u00a0fileset\u00a0patterns.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<!--\u00a0Here\'s\u00a0an\u00a0example:\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0-->\n\u00a0\u00a0\u00a0\u00a0<xdoc>changes.xml,navigation.xml</xdoc>\n\u00a0\u00a0</moduleExcludes>\n", 3 ); |
566 | 0 | append( sb, "", 0 ); |
567 | |
|
568 | 0 | append( sb, "outputDirectory (Default: ${project.reporting.outputDirectory})", 2 ); |
569 | 0 | append( sb, "Directory where the project sites and report distributions will be generated.", 3 ); |
570 | 0 | append( sb, "Expression: ${siteOutputDirectory}", 3 ); |
571 | 0 | append( sb, "", 0 ); |
572 | |
|
573 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
574 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
575 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
576 | 0 | append( sb, "", 0 ); |
577 | |
|
578 | 0 | append( sb, "relativizeDecorationLinks (Default: true)", 2 ); |
579 | 0 | append( sb, "Make links in the site descriptor relative to the project URL. By default, any absolute links that appear in the site descriptor, e.g. banner hrefs, breadcrumbs, menu links, etc., will be made relative to project.url. Links will not be changed if this is set to false, or if the project has no URL defined.", 3 ); |
580 | 0 | append( sb, "Expression: ${relativizeDecorationLinks}", 3 ); |
581 | 0 | append( sb, "", 0 ); |
582 | |
|
583 | 0 | append( sb, "reportPlugins", 2 ); |
584 | 0 | append( sb, "Configuration section used internally by Maven 3.\n\nMore details available here: http://maven.apache.org/plugins/maven-site-plugin/maven-3.html#Configuration_formats\n\nNote: using this field is not mandatory with Maven 3 as Maven core injects usual <reporting> section into this field.\n", 3 ); |
585 | 0 | append( sb, "", 0 ); |
586 | |
|
587 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
588 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
589 | 0 | append( sb, "", 0 ); |
590 | |
|
591 | 0 | append( sb, "skip (Default: false)", 2 ); |
592 | 0 | append( sb, "Set this to \'true\' to skip site generation.", 3 ); |
593 | 0 | append( sb, "Expression: ${maven.site.skip}", 3 ); |
594 | 0 | append( sb, "", 0 ); |
595 | |
|
596 | 0 | append( sb, "template", 2 ); |
597 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
598 | 0 | append( sb, "", 0 ); |
599 | 0 | append( sb, "Default template page.", 3 ); |
600 | 0 | append( sb, "Expression: ${template}", 3 ); |
601 | 0 | append( sb, "", 0 ); |
602 | |
|
603 | 0 | append( sb, "templateDirectory (Default: src/site)", 2 ); |
604 | 0 | append( sb, "Deprecated. use templateFile or skinning instead", 3 ); |
605 | 0 | append( sb, "", 0 ); |
606 | 0 | append( sb, "Directory containing the template page.", 3 ); |
607 | 0 | append( sb, "Expression: ${templateDirectory}", 3 ); |
608 | 0 | append( sb, "", 0 ); |
609 | |
|
610 | 0 | append( sb, "templateFile", 2 ); |
611 | 0 | append( sb, "The location of a Velocity template file to use. When used, skins and the default templates, CSS and images are disabled. It is highly recommended that you package this as a skin instead.", 3 ); |
612 | 0 | append( sb, "Expression: ${templateFile}", 3 ); |
613 | 0 | append( sb, "", 0 ); |
614 | |
|
615 | 0 | append( sb, "validate (Default: false)", 2 ); |
616 | 0 | append( sb, "Whether to validate xml input documents. If set to true, all input documents in xml format (in particular xdoc and fml) will be validated and any error will lead to a build failure.", 3 ); |
617 | 0 | append( sb, "Expression: ${validate}", 3 ); |
618 | 0 | append( sb, "", 0 ); |
619 | |
|
620 | 0 | append( sb, "xdocDirectory (Default: ${basedir}/xdocs)", 2 ); |
621 | 0 | append( sb, "Deprecated. use the standard m2 directory layout", 3 ); |
622 | 0 | append( sb, "", 0 ); |
623 | 0 | append( sb, "Alternative directory for xdoc source, useful for m1 to m2 migration", 3 ); |
624 | 0 | append( sb, "", 0 ); |
625 | |
} |
626 | |
} |
627 | |
|
628 | 0 | if ( goal == null || goal.length() <= 0 || "stage".equals( goal ) ) |
629 | |
{ |
630 | 0 | append( sb, "site:stage", 0 ); |
631 | 0 | append( sb, "Deploys the generated site to a local staging or mock directory based on the site URL specified in the <distributionManagement> section of the POM.\nIt can be used to test that links between module sites in a multi-module build works.\n", 1 ); |
632 | 0 | append( sb, "", 0 ); |
633 | 0 | if ( detail ) |
634 | |
{ |
635 | 0 | append( sb, "Available parameters:", 1 ); |
636 | 0 | append( sb, "", 0 ); |
637 | |
|
638 | 0 | append( sb, "chmod (Default: true)", 2 ); |
639 | 0 | append( sb, "Whether to run the \'chmod\' command on the remote site after the deploy. Defaults to \'true\'.", 3 ); |
640 | 0 | append( sb, "Expression: ${maven.site.chmod}", 3 ); |
641 | 0 | append( sb, "", 0 ); |
642 | |
|
643 | 0 | append( sb, "chmodMode (Default: g+w,a+rX)", 2 ); |
644 | 0 | append( sb, "The mode used by the \'chmod\' command. Only used if chmod = true. Defaults to \'g+w,a+rX\'.", 3 ); |
645 | 0 | append( sb, "Expression: ${maven.site.chmod.mode}", 3 ); |
646 | 0 | append( sb, "", 0 ); |
647 | |
|
648 | 0 | append( sb, "chmodOptions (Default: -Rf)", 2 ); |
649 | 0 | append( sb, "The options used by the \'chmod\' command. Only used if chmod = true. Defaults to \'-Rf\'.", 3 ); |
650 | 0 | append( sb, "Expression: ${maven.site.chmod.options}", 3 ); |
651 | 0 | append( sb, "", 0 ); |
652 | |
|
653 | 0 | append( sb, "inputDirectory", 2 ); |
654 | 0 | append( sb, "Directory containing the generated project sites and report distributions.", 3 ); |
655 | 0 | append( sb, "Required: Yes", 3 ); |
656 | 0 | append( sb, "Expression: ${project.reporting.outputDirectory}", 3 ); |
657 | 0 | append( sb, "", 0 ); |
658 | |
|
659 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
660 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
661 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
662 | 0 | append( sb, "", 0 ); |
663 | |
|
664 | 0 | append( sb, "locales", 2 ); |
665 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
666 | 0 | append( sb, "Expression: ${locales}", 3 ); |
667 | 0 | append( sb, "", 0 ); |
668 | |
|
669 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
670 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
671 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
672 | 0 | append( sb, "", 0 ); |
673 | |
|
674 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
675 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
676 | 0 | append( sb, "", 0 ); |
677 | |
|
678 | 0 | append( sb, "skipDeploy (Default: false)", 2 ); |
679 | 0 | append( sb, "Set this to \'true\' to skip site deployment.", 3 ); |
680 | 0 | append( sb, "Expression: ${maven.site.deploy.skip}", 3 ); |
681 | 0 | append( sb, "", 0 ); |
682 | |
|
683 | 0 | append( sb, "stagingDirectory", 2 ); |
684 | 0 | append( sb, "Staging directory location. This needs to be an absolute path, like C:\\stagingArea\\myProject\\ on Windows or /stagingArea/myProject/ on Unix. If this is not specified, the site will be staged in ${project.build.directory}/staging.", 3 ); |
685 | 0 | append( sb, "Expression: ${stagingDirectory}", 3 ); |
686 | 0 | append( sb, "", 0 ); |
687 | |
} |
688 | |
} |
689 | |
|
690 | 0 | if ( goal == null || goal.length() <= 0 || "stage-deploy".equals( goal ) ) |
691 | |
{ |
692 | 0 | append( sb, "site:stage-deploy", 0 ); |
693 | 0 | append( sb, "Deploys the generated site to a staging or mock directory to the site URL specified in the <distributionManagement> section of the POM, using wagon supported protocols", 1 ); |
694 | 0 | append( sb, "", 0 ); |
695 | 0 | if ( detail ) |
696 | |
{ |
697 | 0 | append( sb, "Available parameters:", 1 ); |
698 | 0 | append( sb, "", 0 ); |
699 | |
|
700 | 0 | append( sb, "chmod (Default: true)", 2 ); |
701 | 0 | append( sb, "Whether to run the \'chmod\' command on the remote site after the deploy. Defaults to \'true\'.", 3 ); |
702 | 0 | append( sb, "Expression: ${maven.site.chmod}", 3 ); |
703 | 0 | append( sb, "", 0 ); |
704 | |
|
705 | 0 | append( sb, "chmodMode (Default: g+w,a+rX)", 2 ); |
706 | 0 | append( sb, "The mode used by the \'chmod\' command. Only used if chmod = true. Defaults to \'g+w,a+rX\'.", 3 ); |
707 | 0 | append( sb, "Expression: ${maven.site.chmod.mode}", 3 ); |
708 | 0 | append( sb, "", 0 ); |
709 | |
|
710 | 0 | append( sb, "chmodOptions (Default: -Rf)", 2 ); |
711 | 0 | append( sb, "The options used by the \'chmod\' command. Only used if chmod = true. Defaults to \'-Rf\'.", 3 ); |
712 | 0 | append( sb, "Expression: ${maven.site.chmod.options}", 3 ); |
713 | 0 | append( sb, "", 0 ); |
714 | |
|
715 | 0 | append( sb, "inputDirectory", 2 ); |
716 | 0 | append( sb, "Directory containing the generated project sites and report distributions.", 3 ); |
717 | 0 | append( sb, "Required: Yes", 3 ); |
718 | 0 | append( sb, "Expression: ${project.reporting.outputDirectory}", 3 ); |
719 | 0 | append( sb, "", 0 ); |
720 | |
|
721 | 0 | append( sb, "inputEncoding (Default: ${project.build.sourceEncoding})", 2 ); |
722 | 0 | append( sb, "Specifies the input encoding.", 3 ); |
723 | 0 | append( sb, "Expression: ${encoding}", 3 ); |
724 | 0 | append( sb, "", 0 ); |
725 | |
|
726 | 0 | append( sb, "locales", 2 ); |
727 | 0 | append( sb, "A comma separated list of locales supported by Maven. The first valid token will be the default Locale for this instance of the Java Virtual Machine.", 3 ); |
728 | 0 | append( sb, "Expression: ${locales}", 3 ); |
729 | 0 | append( sb, "", 0 ); |
730 | |
|
731 | 0 | append( sb, "outputEncoding (Default: ${project.reporting.outputEncoding})", 2 ); |
732 | 0 | append( sb, "Specifies the output encoding.", 3 ); |
733 | 0 | append( sb, "Expression: ${outputEncoding}", 3 ); |
734 | 0 | append( sb, "", 0 ); |
735 | |
|
736 | 0 | append( sb, "siteDirectory (Default: ${basedir}/src/site)", 2 ); |
737 | 0 | append( sb, "Directory containing the site.xml file and the source for apt, fml and xdoc docs.", 3 ); |
738 | 0 | append( sb, "", 0 ); |
739 | |
|
740 | 0 | append( sb, "skipDeploy (Default: false)", 2 ); |
741 | 0 | append( sb, "Set this to \'true\' to skip site deployment.", 3 ); |
742 | 0 | append( sb, "Expression: ${maven.site.deploy.skip}", 3 ); |
743 | 0 | append( sb, "", 0 ); |
744 | |
|
745 | 0 | append( sb, "stagingRepositoryId", 2 ); |
746 | 0 | append( sb, "The identifier of the repository where the staging site will be deployed. This id will be used to lookup a corresponding <server> entry from the settings.xml. If a matching <server> entry is found, its configured credentials will be used for authentication. If this is not specified, then the corresponding value of distributionManagement.site.id will be taken as default, unless this is not defined either then the String \'stagingSite\' is used. (Note: until v. 2.3 and 3.0-beta-3 the String \'stagingSite\' is always used.)", 3 ); |
747 | 0 | append( sb, "Expression: ${stagingRepositoryId}", 3 ); |
748 | 0 | append( sb, "", 0 ); |
749 | |
|
750 | 0 | append( sb, "stagingSiteURL", 2 ); |
751 | 0 | append( sb, "The staged site will be deployed to this URL. If you don\'t specify this, the default-value will be \'${project.distributionManagement.site.url}/staging\', where \'project\' is either the current project or, in a reactor build, the top level project in the reactor.\nNote that even if you specify this plugin parameter, you still need to indicate ${project.distributionManagement.site.url} at least in your top level project in order for relative links between modules to be resolved correctly.\n", 3 ); |
752 | 0 | append( sb, "Expression: ${stagingSiteURL}", 3 ); |
753 | 0 | append( sb, "", 0 ); |
754 | |
} |
755 | |
} |
756 | |
|
757 | 0 | if ( getLog().isInfoEnabled() ) |
758 | |
{ |
759 | 0 | getLog().info( sb.toString() ); |
760 | |
} |
761 | 0 | } |
762 | |
|
763 | |
|
764 | |
|
765 | |
|
766 | |
|
767 | |
|
768 | |
|
769 | |
|
770 | |
|
771 | |
|
772 | |
private static String repeat( String str, int repeat ) |
773 | |
{ |
774 | 0 | StringBuffer buffer = new StringBuffer( repeat * str.length() ); |
775 | |
|
776 | 0 | for ( int i = 0; i < repeat; i++ ) |
777 | |
{ |
778 | 0 | buffer.append( str ); |
779 | |
} |
780 | |
|
781 | 0 | return buffer.toString(); |
782 | |
} |
783 | |
|
784 | |
|
785 | |
|
786 | |
|
787 | |
|
788 | |
|
789 | |
|
790 | |
|
791 | |
|
792 | |
private void append( StringBuffer sb, String description, int indent ) |
793 | |
{ |
794 | 0 | for ( Iterator it = toLines( description, indent, indentSize, lineLength ).iterator(); it.hasNext(); ) |
795 | |
{ |
796 | 0 | sb.append( it.next().toString() ).append( '\n' ); |
797 | |
} |
798 | 0 | } |
799 | |
|
800 | |
|
801 | |
|
802 | |
|
803 | |
|
804 | |
|
805 | |
|
806 | |
|
807 | |
|
808 | |
|
809 | |
|
810 | |
private static List toLines( String text, int indent, int indentSize, int lineLength ) |
811 | |
{ |
812 | 0 | List<String> lines = new ArrayList<String>(); |
813 | |
|
814 | 0 | String ind = repeat( "\t", indent ); |
815 | 0 | String[] plainLines = text.split( "(\r\n)|(\r)|(\n)" ); |
816 | 0 | for ( int i = 0; i < plainLines.length; i++ ) |
817 | |
{ |
818 | 0 | toLines( lines, ind + plainLines[i], indentSize, lineLength ); |
819 | |
} |
820 | |
|
821 | 0 | return lines; |
822 | |
} |
823 | |
|
824 | |
|
825 | |
|
826 | |
|
827 | |
|
828 | |
|
829 | |
|
830 | |
|
831 | |
|
832 | |
private static void toLines( List<String> lines, String line, int indentSize, int lineLength ) |
833 | |
{ |
834 | 0 | int lineIndent = getIndentLevel( line ); |
835 | 0 | StringBuffer buf = new StringBuffer( 256 ); |
836 | 0 | String[] tokens = line.split( " +" ); |
837 | 0 | for ( int i = 0; i < tokens.length; i++ ) |
838 | |
{ |
839 | 0 | String token = tokens[i]; |
840 | 0 | if ( i > 0 ) |
841 | |
{ |
842 | 0 | if ( buf.length() + token.length() >= lineLength ) |
843 | |
{ |
844 | 0 | lines.add( buf.toString() ); |
845 | 0 | buf.setLength( 0 ); |
846 | 0 | buf.append( repeat( " ", lineIndent * indentSize ) ); |
847 | |
} |
848 | |
else |
849 | |
{ |
850 | 0 | buf.append( ' ' ); |
851 | |
} |
852 | |
} |
853 | 0 | for ( int j = 0; j < token.length(); j++ ) |
854 | |
{ |
855 | 0 | char c = token.charAt( j ); |
856 | 0 | if ( c == '\t' ) |
857 | |
{ |
858 | 0 | buf.append( repeat( " ", indentSize - buf.length() % indentSize ) ); |
859 | |
} |
860 | 0 | else if ( c == '\u00A0' ) |
861 | |
{ |
862 | 0 | buf.append( ' ' ); |
863 | |
} |
864 | |
else |
865 | |
{ |
866 | 0 | buf.append( c ); |
867 | |
} |
868 | |
} |
869 | |
} |
870 | 0 | lines.add( buf.toString() ); |
871 | 0 | } |
872 | |
|
873 | |
|
874 | |
|
875 | |
|
876 | |
|
877 | |
|
878 | |
|
879 | |
private static int getIndentLevel( String line ) |
880 | |
{ |
881 | 0 | int level = 0; |
882 | 0 | for ( int i = 0; i < line.length() && line.charAt( i ) == '\t'; i++ ) |
883 | |
{ |
884 | 0 | level++; |
885 | |
} |
886 | 0 | for ( int i = level + 1; i <= level + 4 && i < line.length(); i++ ) |
887 | |
{ |
888 | 0 | if ( line.charAt( i ) == '\t' ) |
889 | |
{ |
890 | 0 | level++; |
891 | 0 | break; |
892 | |
} |
893 | |
} |
894 | 0 | return level; |
895 | |
} |
896 | |
} |