我正在寻找一种在开发过程中按需要在服务器端编译CSS LESS文件的方法。例如,如果浏览器向/assets/css/foo.css发出请求,我希望服务器注意到有一个/assets/css/foo.less文件,然后将该文件编译并返回结果的css。我猜测必须有一个LESS servlet能够做到这一点?用于java web应用程序的动态LESS编译器?
我运行Tomcat 7与Spring MVC应用
如何配置Java Web应用程序对飞LESS编译呢?
我正在寻找一种在开发过程中按需要在服务器端编译CSS LESS文件的方法。例如,如果浏览器向/assets/css/foo.css发出请求,我希望服务器注意到有一个/assets/css/foo.less文件,然后将该文件编译并返回结果的css。我猜测必须有一个LESS servlet能够做到这一点?用于java web应用程序的动态LESS编译器?
我运行Tomcat 7与Spring MVC应用
如何配置Java Web应用程序对飞LESS编译呢?
我觉得你在找什么是Servlet Filter。我是不知道一个现成的一个没有编译,并已开始使用lesscss-java,但现在我可以看到有一个更大的项目称为Web Resource Optimizer for Java - wro4j与服务器端LESS support。
这将是更简单(和更有效的)首先编译您的Web应用程序的编译过程中,您的较少的文件到CSS文件。
作为一个例子,使用Maven的情况下,我们使用lesscss-maven-plugin(编译目标,过程来源相),以从更小的文件生成CSS文件。然后,只有文件被使用并打包在webapp中。否较少文件是动态使用的。
另一个优点是,在部署webapp之前编译的文件较少,因此编译错误可以在更早的时候检测到。
结构示例的pom.xml:
<plugin>
<groupId>org.lesscss</groupId>
<artifactId>lesscss-maven-plugin</artifactId>
<version>1.3.0</version>
<configuration>
<sourceDirectory>${project.basedir}/src/main/webapp/less</sourceDirectory>
<outputDirectory>${project.build.directory}/${project.build.finalName}/css</outputDirectory>
<compress>true</compress>
<includes>
<include>main.less</include>
</includes>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
</goals>
</execution>
</executions>
</plugin>
我认为这是很好的,然后进入生产时,当设计师只是摆弄设置运行maven每次你改变一个小东西杀死生产力 – ams
我们做的是,我们有两种模式:开发和生产。通过https://github.com/marceloverdijk/lesscss-maven-plugin
<link type="text/css" rel="stylesheet" href="${staticContext}/css/style.css" />
在你的HTML
的督促,使用编译样式:
用于开发,使用官方少CSS JS编译器,汇编上飞只是关于使用wro4j进行少量编译的提示:http://code.google.com/p/wro4j/wiki/AbstractProcessorsFilter –
@AlexObjelean如果您想要使用过滤器,该怎么办?仅在开发过程中? – dtrunk
WroFilter有一个启用/禁用标志。您可以将其设置为仅开发,并且所有内容都应该可以在没有其他更改的情况下使用 –