簡體   English   中英

使用Ant的怪異錯誤

[英]Weird error in using Ant

這是我的使用ant的build.xml。

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

<!-- 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="lessc" depends="css.concatenate">
    <echo>now in compression</echo>
    <java classname="CpLess" fork="true">
        <arg value="${basedir}/src/main/webapp/cons"/><!-- input folder that contains less file -->
        <arg value="${basedir}/src/main/webapp/css"/><!-- output folder -->
        <classpath>
            <pathelement location="${basedir}/lib/commons-logging.jar"/>
            <pathelement location="${basedir}/lib/js.jar"/>
            <pathelement location="${basedir}/lib/lesscss-engine.jar"/>
            <pathelement location="${basedir}/lib/yuicompressor.jar"/>
            <pathelement location="${basedir}/lib/zkjszips.jar"/>
            <pathelement location="${basedir}/lib/zkless.jar"/>
            <pathelement location="${basedir}/lib/zul.jar"/> <!-- only needed if using _zkmixins.less -->
        </classpath>
    </java>
</target>

<target name="rename" depends="lessc">
    <echo>renaming...</echo>
    <rename src="${basedir}/src/main/webapp/css/cons.css.dsp" dest="${basedir}/src/main/webapp/css/core.css"/>
    <delete file="${basedir}/src/main/webapp/css/cons.css.dsp.src"/>
    <echo>rename done</echo>
</target>


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

</target>



</project>

當我運行此命令時,它會出現如下錯誤:

Buildfile: C:\Users\di_yu\workspace\lessCompiler\build.xml
css.concatenate:
 [echo] cons is done!
lessc:
 [echo] now in compression
 [java] Compiling...      C:\Users\di_yu\workspace\lessCompiler\src\main\webapp\cons\cons.less
css.concatenate:
 [echo] cons is done!
css.concatenate:
 [echo] cons is done!
lessc:
 [echo] now in compression
 [java] Compiling...    C:\Users\di_yu\workspace\lessCompiler\src\main\webapp\cons\cons.less
 rename:
 [echo] renaming...
 [rename] DEPRECATED - The rename task is deprecated.  Use move instead.
 [delete] Deleting:  C:\Users\di_yu\workspace\lessCompiler\src\main\webapp\css\cons.css.dsp.src
 [echo] rename done
 trasition:
 [echo]  in trasition 

BUILD FAILED
Target "precompile-templates" does not exist in the project "compile". 

Total time: 4 seconds

如您所見,它說“ precompile-templates”目標不存在。 但是,我根本沒有調用此任務。 我只是從build.xml中刪除了它,沒有其他與此相關的目標。 錯誤是怎么來的? PS:我使用eclipse作為ANT運行來運行此build.xml。

從文件中刪除不必要的目標后,是否更改了要運行的目標? 在我看來,運行配置仍在使用舊目標。 采用

問題是您創建了一個目標“ precompile-templates”,隨后將其刪除了……並且Eclipse正在“記住”已經過時的目標。

建議:1)“文件>全部保存”,2)“項目>清理項目” 3)“運行方式,Ant構建”

看看是否可行!

實際上,我發現了問題所在。 我仍然使用舊的配置來運行build.xml。 解決方案是這樣的:

  1. 右鍵單擊build.xml
  2. 單擊“運行方式...”,然后單擊外部配置工具
  3. 刪除選定的啟動配置。

Para aquel que le interese buil.xml

<?xml version="1.0" encoding="UTF-8"?>
<project name="less.compile" default="css.concatenate" basedir=".">
<!-- compile LESS -->
<target name="css.concatenate">
    <concat destfile="${basedir}/WebContent/cons/index.less">
        <fileset dir="${basedir}/WebContent/less/import">
            <include name="*.less"/>
        </fileset>
    </concat>
    <echo>cons is done!</echo>
</target>

 <target name="css.lessc">
        <java classname="CpLess" fork="true">
            <arg value="${basedir}/WebContent/cons"/><!-- output folder -->
            <arg value="${basedir}/WebContent/less"/><!-- output folder -->
            <classpath>
                <pathelement location="${basedir}/WebContent/WEB-INF/lib/commons-     logging.jar"/>
                <pathelement location="${basedir}/WebContent/WEB-INF/lib/js.jar"/>
                <pathelement location="${basedir}/WebContent/WEB-INF/lib/lesscss-engine-1.3.3.jar"/>
                <pathelement location="${basedir}/WebContent/WEB-INF/lib/yuicompressor-2.4.7.jar"/>
                <pathelement location="${basedir}/WebContent/WEB-INF/lib/zkjszips.jar"/>
                <pathelement location="${basedir}/WebContent/WEB-INF/lib/zkless.jar"/>
                <pathelement location="${basedir}/WebContent/WEB-INF/lib/zul.jar"/><!-- only needed if using _zkmixins.less -->
            </classpath>
        </java>
    </target>

<target name="lessc">
    <java classname="CpLess" fork="true">
        <arg value="C:/WKSLuna000/PruebasZul/WebContent/lesssrc"/><!-- output folder -->
        <arg value="C:/WKSLuna000/PruebasZul/WebContent/lessbuild"/><!-- output folder -->
        <classpath>
            <pathelement location="${basedir}/WebContent/WEB-INF/lib/commons-logging.jar"/>
            <pathelement location="${basedir}/WebContent/WEB-INF/lib/js.jar"/>
            <pathelement location="${basedir}/WebContent/WEB-INF/lib/lesscss-engine-1.3.3.jar"/>
            <pathelement location="${basedir}/WebContent/WEB-INF/lib/yuicompressor-2.4.7.jar"/>
            <pathelement location="${basedir}/WebContent/WEB-INF/lib/zkjszips.jar"/>
            <pathelement location="${basedir}/WebContent/WEB-INF/lib/zkless.jar"/>
            <pathelement location="${basedir}/WebContent/WEB-INF/lib/zul.jar"/><!-- only needed if using _zkmixins.less -->
        </classpath>
    </java>
</target>
</project>


En la carpeta cons/
                  /zk/
                      _header.less
                      _zkminis.less
                      _skvariables.less
En la carpeta less/
                  /import/
                         0index.less
                         button.less
                         ....
                         /zk/
                             _header.less
                            _zkminis.less
                            _skvariables.less

Archivo 0index.less:
@import "../bootstrap/less/variables.less";
@import "../bootstrap/less/mixins.less";
@import "zk/_header.less";

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM