Liferay 6.2
Maven 3.3.9
我正在使用liferay-maven插件:6.2.10.13:build-css将scss文件编译为css。
我的主.css是:
@import url(base.css);
@import url(application.css);
@import url(layout.css);
@import url(dockbar.css);
@import url(navigation.css);
@import url(portlet.css);
@import url(extras.css);
@import url(custom.css);
@import "wip/main";
它是一个普通的Liferay main.css文件。我刚刚添加了wip/main导入(这是一个scss文件)。
我的wip/main.scss文件是:
@charset "UTF-8";
/////////////////////////////
// variables
@import "app-var";
@import "app-mixins";
/////////////////////////////
// maincontent
@import "slider-banner";
@import "membership-box";
// more @imports...
它起作用了!很棒:)
现在我想在我所有的wip/main.scss规则(从不同的文件导入)前面加一个:
.aui {
所以类似于:
@charset "UTF-8";
.aui {
/////////////////////////////
// variables
@import "app-var";
@import "app-mixins";
// maincontent
@import "slider-banner";
@import "membership-box";
}
但我有一个例外:
Failed to execute goal com.liferay.maven.plugins:liferay-maven-plugin:6.2.10.13:build-css (default) on project wip-theme: null: MojoExecutionException: InvocationTargetException: (SyntaxError) @charset may only be used at the root of a document. -> [Help 1]
因此,仅仅添加.aui {
-AFTER-@charset "UTF-8";
就会破坏构建
我打赌@charset
被复制到所有@import
文件,因此.aui {
包含一个@charset
。。。但我不知道这是否是问题所在,以及如何避免它。
有人知道变通办法吗?感谢
我最终从scss文件中删除了@charset,并通过IDE直接设置了文件编码。
到目前为止还不错。
顺便说一句,这似乎是一个maven问题(配置或其他),因为用grunt(grunt构建)做同样的事情不会引起任何问题。
无论如何,如果我删除@charset,在maven下工作。不是最好的,但直到找到更好的。。。