2024年1月18日 星期四

Maven 自動 Compile SASS/SCSS (使用 us.hebi.sass plugin)

前一篇文章《Maven 自動 Compile SASS/SCSS (使用 nl.geodienstencentrum.maven plugin)》中提到使用 nl.geodienstencentrum.maven 這個 plugin 可以自動 compile SASS。

但這 plugin 是使用已經淘汰的 Ruby SASS(現在推薦使用 Dart SASS),且經過測試,只能支援到 Java 11(我自己是沒有 Java 12 ~ 16),Java 17(含)以上都會出現 Error。

於是我又另外去找,找到 us.hebi.sass 這個 plugin 。

這個 plugin 的使用如下

<plugin>
	<groupId>us.hebi.sass</groupId>
	<artifactId>sass-cli-maven-plugin</artifactId>
	<version>1.0.3</version>
	<configuration>
		<sassVersion>1.62.0</sassVersion>
		<args>
			<arg> --style=compressed</arg>
			<arg>${project.basedir}/src/main/resources/sass:${project.build.directory}/class/styles</arg>
		</args>
	</configuration>
	<executions>
		<execution>
			<id>sass-exec</id>
			<phase>generate-resources</phase>
			<goals>
				<goal>run</goal>
			</goals>
		</execution>
	</executions>
</plugin>

這個 plugin 的使用方式基本上等同於 SASS CLI 的指令

SASS 要將 ${workspace}/sass/main.sass 編譯成 ${workspace}/styles/main.css ,指令是

sass ${workspace}/sass/main.sass:${workspace}/styles/main.css

以此 plugin 就是 <args> 寫成

<args>
	<arg>${workspace}/sass/main.sass:${workspace}/styles/main.css<arg>
</args>

如果想要加上其他參數,就多加其他 <arg> tag。例如還要再加上 --no-charset,就這樣寫:

<args>
	<arg>${workspace}/sass/main.sass:${workspace}/styles/main.css</arg>
	<arg>--no-charset</arg> 
</args>

其他參數依此類推。

沒有留言:

張貼留言