yuicompressor:compress
Full name:
com.github.hazendaz.maven:yuicompressor-maven-plugin:2.2.0:compress
Description:
Apply compression on JS and CSS (using YUI Compressor).
Attributes:
- Requires a Maven project to be executed.
- The goal is thread-safe and supports parallel builds.
- Binds by default to the lifecycle phase:
process-resources
.
Required Parameters
Name | Type | Since | Description |
---|---|---|---|
<outputDirectory> |
File |
- |
The output directory into which to copy the resources. Default: ${project.build.outputDirectory} |
Optional Parameters
Name | Type | Since | Description |
---|---|---|---|
<aggregations> |
Aggregation[] |
- |
a list of aggregation/concatenation to do after processing, for example to create big js files that contain several small js files. Aggregation could be done on any type of file (js, css, ..). |
<disableOptimizations> |
boolean |
- |
[js only] disable all micro optimizations. Default: false User Property: maven.yuicompressor.disableOptimizations |
<encoding> |
String |
- |
Read the input file using "encoding". Default: ${project.build.sourceEncoding} User Property: file.encoding |
<excludeResources> |
boolean |
- |
Excludes files from resources directories. Default: false |
<excludeWarSourceDirectory> |
boolean |
- |
Excludes files from webapp directory. |
<excludes> |
List<String> |
- |
list of additional excludes. |
<failOnWarning> |
boolean |
- |
Define if plugin must stop/fail on warnings. Default: false User Property: maven.yuicompressor.failOnWarning |
<force> |
boolean |
- |
force the compression of every files, else if compressed file already exists and is younger than source file, nothing is done. Default: false User Property: maven.yuicompressor.force |
<gzip> |
boolean |
- |
request to create a gzipped version of the yuicompressed/aggregation files. Default: false User Property: maven.yuicompressor.gzip |
<includes> |
List<String> |
- |
list of additional includes. |
<jswarn> |
boolean |
- |
[js only] Display possible errors in the code. Default: true User Property: maven.yuicompressor.jswarn |
<level> |
int |
- |
gzip level. Default: 9 User Property: maven.yuicompressor.level |
<linebreakpos> |
int |
- |
Insert line breaks in output after the specified column number. Default: -1 User Property: maven.yuicompressor.linebreakpos |
<nocompress> |
boolean |
- |
[js only] No compression. Default: false User Property: maven.yuicompressor.nocompress |
<nomunge> |
boolean |
- |
[js only] Minify only, do not obfuscate. Default: false User Property: maven.yuicompressor.nomunge |
<nosuffix> |
boolean |
- |
If no "suffix" must be add to output filename (maven's configuration manage empty suffix like default). Default: false User Property: maven.yuicompressor.nosuffix |
<preProcessAggregates> |
boolean |
- |
aggregate files before minify. Default: false User Property: maven.yuicompressor.preProcessAggregates |
<preserveAllSemiColons> |
boolean |
- |
[js only] Preserve unnecessary semicolons. Default: false User Property: maven.yuicompressor.preserveAllSemiColons |
<skip> |
boolean |
- |
Whether to skip execution. Default: false User Property: maven.yuicompressor.skip |
<sourceDirectory> |
File |
- |
Javascript source directory. (result will be put to outputDirectory). Default: ${project.basedir}/src/main/js |
<statistics> |
boolean |
- |
show statistics (compression ratio). Default: true User Property: maven.yuicompressor.statistics |
<suffix> |
String |
- |
The output filename suffix. Default: -min User Property: maven.yuicompressor.suffix |
<useProcessedResources> |
boolean |
- |
Use processed resources if available. Default: false |
<useSmallestFile> |
boolean |
- |
use the input file as output when the compressed file is larger than the original. Default: true User Property: maven.yuicompressor.useSmallestFile |
<warSourceDirectory> |
File |
- |
Single directory for extra files to include in the WAR. Default: ${project.basedir}/src/main/webapp |
<webappDirectory> |
File |
- |
The directory where the webapp is built. Default: ${project.build.directory}/${project.build.finalName} |
Parameter Details
<aggregations>
a list of aggregation/concatenation to do after processing, for example to create big js files that contain several small js files. Aggregation could be done on any type of file (js, css, ..).
- Type:
net.alchim31.maven.yuicompressor.Aggregation[]
- Required:
No
<disableOptimizations>
[js only] disable all micro optimizations.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.disableOptimizations
- Default:
false
<encoding>
Read the input file using "encoding".
- Type:
java.lang.String
- Required:
No
- User Property:
file.encoding
- Default:
${project.build.sourceEncoding}
<excludeResources>
Excludes files from resources directories.
- Type:
boolean
- Required:
No
- Default:
false
<excludeWarSourceDirectory>
Excludes files from webapp directory.
- Type:
boolean
- Required:
No
<excludes>
list of additional excludes.
- Type:
java.util.List<java.lang.String>
- Required:
No
<failOnWarning>
Define if plugin must stop/fail on warnings.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.failOnWarning
- Default:
false
<force>
force the compression of every files, else if compressed file already exists and is younger than source file, nothing is done.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.force
- Default:
false
<gzip>
request to create a gzipped version of the yuicompressed/aggregation files.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.gzip
- Default:
false
<includes>
list of additional includes.
- Type:
java.util.List<java.lang.String>
- Required:
No
<jswarn>
[js only] Display possible errors in the code.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.jswarn
- Default:
true
<level>
gzip level.
- Type:
int
- Required:
No
- User Property:
maven.yuicompressor.level
- Default:
9
<linebreakpos>
Insert line breaks in output after the specified column number.
- Type:
int
- Required:
No
- User Property:
maven.yuicompressor.linebreakpos
- Default:
-1
<nocompress>
[js only] No compression.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.nocompress
- Default:
false
<nomunge>
[js only] Minify only, do not obfuscate.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.nomunge
- Default:
false
<nosuffix>
If no "suffix" must be add to output filename (maven's configuration manage empty suffix like default).
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.nosuffix
- Default:
false
<outputDirectory>
The output directory into which to copy the resources.
- Type:
java.io.File
- Required:
Yes
- Default:
${project.build.outputDirectory}
<preProcessAggregates>
aggregate files before minify.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.preProcessAggregates
- Default:
false
<preserveAllSemiColons>
[js only] Preserve unnecessary semicolons.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.preserveAllSemiColons
- Default:
false
<skip>
Whether to skip execution.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.skip
- Default:
false
<sourceDirectory>
Javascript source directory. (result will be put to outputDirectory).
- Type:
java.io.File
- Required:
No
- Default:
${project.basedir}/src/main/js
<statistics>
show statistics (compression ratio).
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.statistics
- Default:
true
<suffix>
The output filename suffix.
- Type:
java.lang.String
- Required:
No
- User Property:
maven.yuicompressor.suffix
- Default:
-min
<useProcessedResources>
Use processed resources if available.
- Type:
boolean
- Required:
No
- Default:
false
<useSmallestFile>
use the input file as output when the compressed file is larger than the original.
- Type:
boolean
- Required:
No
- User Property:
maven.yuicompressor.useSmallestFile
- Default:
true
<warSourceDirectory>
Single directory for extra files to include in the WAR.
- Type:
java.io.File
- Required:
No
- Default:
${project.basedir}/src/main/webapp
<webappDirectory>
The directory where the webapp is built.
- Type:
java.io.File
- Required:
No
- Default:
${project.build.directory}/${project.build.finalName}