Как гарантировать, что ссылки на классы в таблице стилей defaults.css скомпилированы в SWC
Я использую compc в муравье для задачи, чтобы скомпилировать тему SWC. Этот SWC темы зависит от некоторых SWC активов, и в таблице стилей defaults.css я ссылаюсь на некоторые классы в этих SWC активах.
Связь, которую я использую для ресурса swcs - это compiler.library-path, но кажется, что ссылки на классы не скомпилированы в тему swc.
Я включаю свою таблицу стилей, используя include-файл и defaults-css-url.
Когда я создаю свое приложение, которое использует эту тему SWC, я получаю ошибку класса not found для класса в активе SWC.
Самым простым решением, конечно, является зависимость моего приложения от актива swc, но я не хочу этого делать. Все ресурсы, необходимые для темы, должны быть включены в тему SWC. Я также не хочу раздувать мой swc темы, включая все классы в swc актива, используя compiler.include-library.
1 ответ
Пример кода муравья:
<target name="compile" description="Builds the SWC">
<mkdir dir="${dist}" />
<compc output="${dist}/${library.name}.swc"
fork="true" debug="false" warn-no-constructor="false">
<source-path path-element="${src.dir}" />
<external-library-path dir="${FLEX_HOME}/frameworks/libs">
<include name="player/9/playerglobal.swc" />
<include name="datavisualization.swc" />
<include name="framework.swc" />
<include name="rpc.swc" />
<include name="utilities.swc" />
</external-library-path>
<compiler.library-path dir="${basedir}/libs" append="true">
<include name="*.swc" />
</compiler.library-path>
<include-file name="defaults.css" path="${src.dir}/defaults.css" />
<keep-as3-metadata name="Bindable" />
<keep-as3-metadata name="Managed" />
<keep-as3-metadata name="ChangeEvent" />
<keep-as3-metadata name="NonCommittingChangeEvent" />
<keep-as3-metadata name="Transient" />
<jvmarg line="${compc.jvm.args}" />
</compc>
</target>
надеюсь, помощь для вас