在Java Web应用程序的飞行LESS编译器?

我正在寻找一种在开发过程中根据需要在服务器端编译CSS LESS文件的方法。 例如,如果浏览器向/assets/css/foo.css发出请求,我希望服务器注意到有/assets/css/foo.less文件,然后编译此文件并返回生成的css。 我猜是某个地方必须有一个可以做到这一点的servlets?

我正在使用Spring MVC应用程序运行tomcat 7

如何配置Java Web App即时编译?

我认为你要找的是一个Servletfilter 。 我不知道有一个现成的LESS编译,并且已经开始使用lesscss-java制作一个,但现在我可以看到有一个更大的项目,称为Web资源优化器,用于Java – wro4j ,服务器端LESS支持 。

在构建Web应用程序期间,首先将较少的文件编译为css文件会更简单 (也更有效)。
作为一个例子,当使用Maven时 ,我们使用lesscss-maven-plugin ( 编译目标, 进程源阶段)从较少的文件生成css文件。 然后只在webapp中使用和打包css文件。 动态使用的文件不少
另一个优点是在部署webapp之前编译的文件较少,因此可以更快地检测到编译错误。

pom.xml中的配置示例:

 org.lesscss lesscss-maven-plugin 1.3.0  ${project.basedir}/src/main/webapp/less ${project.build.directory}/${project.build.finalName}/css true  main.less      compile     

我们做的是我们有两种模式:开发和生产。

对于dev,使用官方的less css js编译器,它可以动态编译:

    

在你的HTML中

对于prod,请使用https://github.com/marceloverdijk/lesscss-maven-plugin编译的样式