Sadece esnek kullanmaya başladım ve SDK'yı (Flex Builder) kullanmıyorum. Bir mxml dosyasını bir karınca oluşturma komut dosyasından derlemenin en iyi yolunun ne olduğunu merak ediyordum.Mxml dosyalarını ant ve flex sdk ile derleme
cevap
Flex SDK bir dizi ant görevleriyle birlikte gelir.
İştehttp://livedocs.adobe.com/flex/3/html/help.html?content=anttasks_1.html
ant ile Flex SWCS derleme bir örnektir: More info at
http://www.mikechambers.com/blog/2006/05/19/example-using-ant-with-compc-to-compile-swcs/
Mike odalarına Maven açık
Eğer ediyorsanız, esnemeye deneyin -compiler-mojo eklentisi:
Christiaan
Kesinlikle Flex ile birlikte gelen karınca görevlerine devam edersem, derleme düzeninizi çok daha temiz hale getirirler. İşte derlemek ve sonra esnek projeyi
<?xml version="1.0"?>
<project name="flexapptest" default="buildAndRun" basedir=".">
<!--
make sure this jar file is in the ant lib directory
classpath="${ANT_HOME}/lib/flexTasks.jar"
-->
<taskdef resource="flexTasks.tasks" />
<property name="appname" value="flexapptest"/>
<property name="appname_main" value="Flexapptest"/>
<property name="FLEX_HOME" value="/Applications/flex_sdk_3"/>
<property name="APP_ROOT" value="."/>
<property name="swfOut" value="dist/${appname}.swf" />
<!-- point this to your local copy of the flash player -->
<property name="flash.player" location="/Applications/Adobe Flash CS3/Players/Flash Player.app" />
<target name="compile">
<mxmlc file="${APP_ROOT}/src/${appname_main}.mxml"
output="${APP_ROOT}/${swfOut}"
keep-generated-actionscript="true">
<default-size width="800" height="600" />
<load-config filename="${FLEX_HOME}/frameworks/flex-config.xml"/>
<source-path path-element="${FLEX_HOME}/frameworks"/>
<compiler.library-path dir="${APP_ROOT}/libs" append="true">
<include name="*.swc" />
</compiler.library-path>
</mxmlc>
</target>
<target name="buildAndRun" depends="compile">
<exec executable="open">
<arg line="-a '${flash.player}'"/>
<arg line="${APP_ROOT}/${swfOut}" />
</exec>
</target>
<target name="clean">
<delete dir="${APP_ROOT}/src/generated"/>
<delete file="${APP_ROOT}/${swfOut}"/>
</target>
</project>
başka seçenek yoktur çalışacak bir örnek inşa script - bu Project Sprouts denir.
Bu, Ruby, RubyGems ve Rake ile oluşturulan, Maven ve ANT'de bulunan özelliklerin çoğunu sağlayan, ancak çok daha temiz bir sözdizimi ve daha basit oluşturma komut dosyaları içeren bir sistemdir.
Örneğin, yukarıda gösterilen ANT komut Lahanası bu şekilde görünecektir:
rake
oluşturulan kaldırmak için:
require 'rubygems'
require 'sprout'
desc 'Compile and run the SWF'
flashplayer :run => 'bin/SomeProject.swf'
mxmlc 'bin/SomeProject.swf' do |t|
t.input = 'src/SomeProject.as'
t.default_size = '800 600'
t.default_background_color = '#ffffff'
t.keep_generated_actionscript = true
t.library_path << 'libs'
end
task :default => :run
Ruby ve RubyGems kurduktan sonra, sadece bu senaryoyu çağırır dosyaları, çalıştırın:
rake clean
Mevcut görevleri görmek için:
Bir kez kurulduktan sonra, Sprouts'un bir başka büyük avantajı, bir çift basit komut satırı eylemiyle çalışmaya hazır bir geliştirme kutusu alabilecek proje, sınıf ve test üreteçleri sağlamasıdır.
# Generate a project and cd into it:
sprout -n mxml SomeProject
cd SomeProject
# Compile and run the main debug SWF:
rake
# Generate a new class, test case and test suite:
script/generate class utils.MathUtil
# Compile and run the test harness:
rake test
Komisyona giriş için teşekkürler, ama karınca aradım. BTW, kabuk mektubu "mxmlc" bir satır olacak. – chro
Bir mxmlc SWC dosyası alabilir miyim veya kendim derlemem gerekir mi? Mxmlc ant etiketini kullanarak actionscript'i derlemek mümkün ama aynı betik mxml dosyaları için çalışmıyor. Java jar dosyasını hedefimde kullanıyorum ama başarıya ulaşamadım. Teşekkürler! – sutee