我想知道是否有人可以给我演示一下。当我在标签中使用less4j时,应该输入什么?我在网上搜索了很长时间,但似乎根本没有有关在ANT中使用less4j的信息。

但是由于less4j可以在命令行中实现,所以它必须在ANT中可以实现。请帮助我,谢谢!

最佳答案

<?xml version="1.0" encoding="UTF-8"?>
<project name="compile" default="css.concatenate" basedir=".">
<property name="charset" value="utf-8"/>


<macrodef name="less4j">
                <attribute name="src" />
                <attribute name="css" />
                <sequential>
         <java dir="${basedir}/lib/com/github/sommeri/less4j/commandline" classname="CommandLine" fork="false">
                                <classpath>
                                        <pathelement location="${basedir}/lib/less4j.jar" />
                                        <pathelement location="${basedir}/lib/jcommander.jar" />
                                        <pathelement location="${basedir}/lib/antlr-runtime.jar" />
                                        <pathelement location="${basedir}/lib/commons-io.jar" />
                                        <pathelement location="${basedir}/lib/commons-beanutils.jar" />
                                        <pathelement location="${basedir}/lib/commons-logging.jar" />
                                </classpath>
                                <arg value="@{src}" />
                                <arg value="@{css}" />
                        </java>
                </sequential>
        </macrodef>

<!-- compile LESS -->

<target name="css.concatenate">
    <concat destfile="${basedir}/src/main/webapp/cons/cons.less">
        <fileset dir="${basedir}/src/main/webapp/less">
            <include name="*.less"/>
        </fileset>
    </concat>
    <echo>cons is done!</echo>
</target>



<target name="css" depends="css.concatenate" description="Create CSS">
                <mkdir dir="${basedir}/tryGotCSS" />
                <less4j
                        src="${basedir}/src/main/webapp/cons/cons.less"
                        css="${basedir}/src/main/webapp/css/trycore.css" />

        </target>


<target name="trasition" >
            <echo> in trasition </echo>

</target>

<!-- precompile handlebars -->

    <!-- -->



</project>


我正在尝试运行此脚本,但是由于无法找到类“ Commandline”(具有main方法)而导致构建失败,但是当我检查less4j的源代码时,我很确定命令行类位于$ {basedir} / lib / com / github / sommeri / less4j / commandline“ classname =” CommandLine“下。

10-05 22:47