1

ANT を使用して SWC (Flex 4.6) を構築しようとしています。これは私のbuild.xmlが今どのように見えるかです

<?xml version="1.0" encoding="UTF-8"?>
<project name="imanager-framework" basedir=".">

    <property name="src" location="src"/>   
    <property name="dist" location="dist"/> 
    <property name="FLEX_HOME" value="C:/Program Files (x86)/Adobe/Adobe Flash Builder 4.5/sdks/4.6.0"/>        

    <taskdef resource="flexTasks.tasks" classpath="${basedir}/libs/flexTasksFlash4.jar"/>

    <target name="clean">       
        <delete dir="${dist}"/>
    </target>

    <target name="compile">
        <mkdir dir="${dist}"/>
        <compc output="${dist}/imanager-framework.swc">
            <source-path path-element="src" />
            <library-path dir="libs" includes="*" />
            <include-sources dir="${src}" includes="*" />           
        </compc>
    </target>

</project>

そして flexTasks.tasks は次のようになります

mxmlc=flex.ant.MxmlcTask
compc=flex.ant.CompcTask
html-wrapper=flex.ant.HtmlWrapperTask
asdoc=flex.ant.AsDocTask

ビルドを実行すると、このエラーが発生します

Buildfile: E:\flexspace\imanager\framework\build.xml
compile:
    [compc] Loading configuration file C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\sdks\4.6.0\frameworks\flex-config.xml
    [compc] Error: unable to load SWC flexTasksFlash4.jar: could not find catalog.xml within the SWC.

BUILD FAILED
E:\flexspace\imanager\framework\build.xml:16: compc task failed

Total time: 639 milliseconds

compc が flexTasks jar を SWC として読み取ろうとしているようです。何が起きてる?

4

1 に答える 1

1

jarタスク定義を含むライブラリはlibsすべてのswcファイルとしてディレクトリにあるようで、コンパイラはそれをライブラリとして使用しようとしますswc。とは両方ともアーカイブであるためjarswcコンパイラはそれらを抽出してcatalog.xml内部を検索しようとしますが、jar はフラッシュ ライブラリではなく、含まれていません。jar を別の場所に置き、swclib 内のファイルのみを残すことをお勧めします。またはswcパターンを指定

<library-path dir="libs" includes="*.swc" />
于 2012-10-31T13:34:23.250 に答える