我正在尝试设置我的开发人员环境,以便我可以使用maven来编译我的LESS文件以进行正式构建,而且还可以让Eclipse编译LESS以进行增量构建,这样我就不必每次都继续执行maven任务变化较小。环顾四周 - 看起来 wro4j 和 maven 插件和 m2e-wtp 插件应该提供所有这些。
我的设置如下:我刚刚安装了最新的稳定 Eclipse(Java EE 包,其中包括 WTP 内容 - v4.3),并且安装了 m2e 插件和 m2e-wtp 插件。
pom.xml:
<plugin>
<groupId>ro.isdc.wro4j</groupId>
<artifactId>wro4j-maven-plugin</artifactId>
<version>1.4.5</version>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<configuration>
<targetGroups>roa-all</targetGroups>
<destinationFolder>${project.build.directory}/${project.build.finalName}</destinationFolder>
<cssDestinationFolder>${project.build.directory}/${project.build.finalName}/css/</cssDestinationFolder>
<jsDestinationFolder>${project.build.directory}/${project.build.finalName}/js/</jsDestinationFolder>
<wroManagerFactory>ro.isdc.wro.maven.plugin.manager.factory.ConfigurableWroManagerFactory</wroManagerFactory>
</configuration>
</plugin>
wro.properties:
preProcessors=cssImport,semicolonAppender
postProcessors=lessCss,cssMinJawr
wro.xml:
<groups xmlns="http://www.isdc.ro/wro">
<group name="roa-all">
<css>/less/*.less</css>
</group>
</groups>
在我的 /less/
文件夹中基本上有一些我已重命名为 .less 文件的 css 文件,以及我实际上添加了一些 LESS 语法和一些颜色变量集的文件。这主要是有效的,当我对 LESS 进行更改时,插件会检测并重建我的 uber css 文件,但是,相当重要的是,它似乎并没有编译 LESS - 它组合了文件并缩小了,但是我的 @variables
仍然采用 LESS 语法。
我还注意到 maven 插件已升级到 v 1.7.0,因此尝试升级到该插件以查看是否存在问题,但这根本没有任何作用(根本没有构建任何内容,而且我没有 uber css 等) )
有人有任何设置经验或知道我在设置中遗漏了什么吗?
最佳答案
问题是因为我的一个文件中有一些无效的 LESS - 这基本上意味着编译步骤失败,因此其他 LESS 文件没有被编译为 CSS(这导致 LESS 变量在我的文件中输出) ) - 使用 Eclipse 增量构建时,没有报告此故障,因此我没有看到它。
我通过显式运行maven命令发现了它,然后得到了正常的maven日志,其中包含编译失败的详细信息。
除此之外,LESS 的 Eclipse 增量构建自此运行得非常好!
正如上面的评论中提到的,我在这里写了如何设置它:
Eclipse & LESS - Better development time with incremental builds
关于eclipse - wro4j & m2e Eclipse 未编译 LESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18773286/