使用Maven和m2e-wtp编译LESS CSS

时间:2013-05-04 14:16:53

标签: eclipse maven less m2e m2e-wtp

我正在尝试使用lesscss-maven-plugin编译LESS CSS文件,包括纯maven(使用命令行)和Eclipse(Juno)。

在lesscss-maven-plugin中,我需要定义一个输出目录,但是我注意到在Eclipse WTP中从我的服务器(JBoss)中的target/m2e-wtp复制文件,但是这个目录被战争忽略了Maven的插件。

我成功地通过Maven配置文件实现了我的目标:在Eclipse中我使用在项目设置中配置的m2e配置文件,因此我可以根据我在Eclipse中构建的内容来定义两个不同的目标文件夹。

这是我的pom.xml:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.dgadev.motd</groupId>
    <artifactId>motd</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>war</packaging>
    <properties>
        <maven.compiler.source>7</maven.compiler.source>
        <maven.compiler.target>7</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
            ....
    </dependencies>

<build>
    <plugins>
        <plugin>
            <groupId>org.lesscss</groupId>
            <artifactId>lesscss-maven-plugin</artifactId>
            <version>1.3.3</version>
            <configuration>
                <outputDirectory>${project.build.directory}/resources/css</outputDirectory>
            </configuration>
            <executions>
                <execution>
                    <goals>
                        <goal>compile</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

<profiles>
    <profile>
        <id>m2e</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.lesscss</groupId>
                    <artifactId>lesscss-maven-plugin</artifactId>
                    <version>1.3.3</version>
                    <configuration>
                        <outputDirectory>${project.build.directory}/m2e-wtp/web-resources/resources/css</outputDirectory>
                    </configuration>
                    <executions>
                        <execution>
                            <goals>
                                <goal>compile</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </profile>
</profiles>

这有效,但有没有更好的方法来做这个,没有配置文件技巧?

2 个答案:

答案 0 :(得分:1)

我找到了另一个使用不同编译器的解决方案:wro4j。使用此编译器,都存在maven和m2e插件。 此外,可以在此处找到教程(用于构建boostrap):m2e-wro4j

答案 1 :(得分:0)

您提供的解决方案相同,更清洁:

https://github.com/marceloverdijk/lesscss-maven-plugin/issues/8

使用m2e变量激活m2e配置文件,因此您无需选择它。