JSP环境下如何对LESS自动预处理

首先,我其实并不懂JSP,但是碍于项目需求,我不得不以一个前端的身份去研究如何在JSP环境下实施LESS。

因为我们这个项目里有用户个性化CSS文件,所以需要能够对LESS自动预处理,而不希望需要人工介入。

好了,废话不多说,以下提供我研究出来的方案。

首先是包依赖性:

apache-commons-logging.jar

log4j-1.2.17.jar

commons-lang-2.6.jar (只能用3.0以下版本,版本过高将报编译错误)

js.jar (目前可用版本为rhino1_7R3和rhino1_7R4。rhino1_7R4性能稍高,但是只报编译错误。rhino1_7R3性能稍差,但是错误信息很详细,对调试LESS很有用。)

lesscss-engine-1.3.0.jar (可选的,似乎去掉也不影响正常运行)

lesscss-servlet-1.3.0.jar (LESS解析包,这个才是关键)

将以上这些包全部放入tomcat的lib文件夹下即可。

环境配置:

只需在WEB-INF/web.xml 文件添加如下节点即可:

    <servlet>
        <servlet-name>less</servlet-name>
        <servlet-class>com.asual.lesscss.LessServlet</servlet-class>
        <init-param>
            <param-name>compress</param-name>
            <param-value>false</param-value>
        </init-param>
        <init-param>
            <param-name>cache</param-name>
            <param-value>false</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>less</servlet-name>
        <url-pattern>*.less</url-pattern>
    </servlet-mapping>

参数compress,表示是否启用压缩。生产环境建议启用。

参数cache,表示是否启用缓存。测试环境不要启用。

Okay,我们来测试一下,新建一个文件,命名为 test.less,文件内容如下:

@color: #FF0000;

#header {
    color: @color;
}
然后,启动tomcat,打开浏览器,输入:http://127.0.0.1:8080/test.less。结果应该如下:

#header {
  color: #ff0000;
}
至此,JSP环境下的LESS预处理宣告成功。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值