This article documents a known issue in the CSS Builder-3.0.0. This issue affects developers who are still using existing war-style (war-mvc-portlet or spring-mvc-portlet) projects and an older version of the CSS builder (css.builder-2.x) . It was discovered that if the CSS Builder product version is not specified, it causes compile errors because the build template is attempting to use an incorrect CSS builder.
Here is a sample error message:
[exec] Output:
[exec]
[exec] > Task :buildCSS FAILED
[exec] Was passed main parameter 'sass.append.css.import.timestamps=true' but no main parameter was defined in your arg class
[exec] Usage: java -jar com.liferay.css.builder-3.0.0.jar [options]
[exec] Options:
[exec] --append-css-import-timestamps
[exec] Whether to append the current timestamp to the URLs in the @import CSS
[exec] at-rules.
[exec] Default: true
[exec] --base-dir
[exec] The base directory that contains the SCSS files to compile.
[exec] Default: src/META-INF/resources
[exec] --compiler
[exec] The type of Sass compiler to use. Supported values are "jni" and "ruby".
[exec] The Ruby Sass compiler requires "com.liferay.sass.compiler.ruby.jar",
[exec] "com.liferay.ruby.gems.jar", and "jruby-complete.jar" to be added to the
[exec] classpath.
[exec] Default: jni
[exec] --dir-names
[exec] The name of the directories, relative to base directory, which contain
[exec] the SCSS files to compile. All sub-directories are searched for SCSS
[exec] files as well.
[exec] Default: [/]
[exec] --excludes
[exec] The SCSS file patterns to exclude from compiling.
[exec] Default: [**/_diffs/**, **/.sass-cache*/**, **/.sass_cache_*/**, **/_sass_cache_*/**, **/_styled/**, **/_unstyled/**, **/css/aui/**, **/css/clay/**, **/tmp/**]
[exec] --generate-source-map
[exec] Whether to generate source maps for easier debugging.
[exec] Default: false
[exec] -h, --help
[exec] Print this message.
[exec] --import-paths
[exec] The import directories of Sass libraries.
[exec] --output-dir
[exec] The name of the sub-directories where the SCSS files are compiled to.
[exec] For each directory that contains SCSS files, a sub-directory with this
[exec] name is created.
[exec] Default: .sass-cache/
[exec] --precision
[exec] The numeric precision of numbers in Sass.
[exec] Default: 9
[exec] --rtl-excluded-path-regexps
[exec] The SCSS file patterns to exclude when converting for right-to-left
[exec] (RTL) support.
[exec] Default: []
Resolution
Status: Fixed
For DXP 7.0 projects, enter:
dependencies {
...
cssBuilder group: "com.liferay", name: "com.liferay.css.builder", version: "2.1.3"
portalCommonCSS group: "com.liferay", name: "com.liferay.frontend.css.common", version: "2.0.3"
}
For DXP 7.1 projects, enter:
dependencies {
...
cssBuilder group: "com.liferay", name: "com.liferay.css.builder", version: "2.1.3"
portalCommonCSS group: "com.liferay", name: "com.liferay.frontend.css.common", version: "3.0.1"
}
If using Blade and other archetypes, updated templates have been released for all product DXP versions - 7.0, 7.1, 7.2, 7.3 and 7.4.