2008-09-16 34 views

Trả lời

10

Flex SDK gửi cùng một bộ nhiệm vụ kiến. Xem thêm thông tin tại địa chỉ:

http://livedocs.adobe.com/flex/3/html/help.html?content=anttasks_1.html

Dưới đây là một ví dụ về biên dịch Flex SWCs với ant:

http://www.mikechambers.com/blog/2006/05/19/example-using-ant-with-compc-to-compile-swcs/

buồng mike

+0

Tôi có thể lấy tệp SWC mxmlc ở đâu đó hoặc tôi có phải tự biên dịch không? Tôi có thể biên dịch ActionScript tốt bằng cách sử dụng thẻ ant mxmlc nhưng kịch bản tương tự không làm việc cho các tập tin mxml. Tôi đã cố gắng sử dụng tệp jar java trong mục tiêu của mình nhưng không thành công. Cảm ơn! – sutee

5

Tôi chắc chắn sẽ đi với các tác vụ kiến ​​được bao gồm trong Flex, chúng làm cho kịch bản xây dựng của bạn sạch hơn rất nhiều. Đây là một kịch bản xây dựng mẫu sẽ biên dịch và sau đó chạy dự án flex của bạn

<?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> 
3

Có một tùy chọn khác - được gọi là Project Sprouts.

Đây là một hệ thống được xây dựng với Ruby, RubyGems và Rake cung cấp nhiều tính năng tìm thấy trong Maven và ANT, nhưng với cú pháp rõ ràng hơn và các kịch bản xây dựng đơn giản hơn.

Ví dụ, kịch bản ANT hiển thị ở trên sẽ trông như thế này trong Sprouts:

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 

Sau khi cài đặt Ruby và RubyGems, bạn chỉ cần gọi cho kịch bản này với:

rake 

để loại bỏ tạo tệp, chạy:

rake clean 

Để xem các tác vụ sẵn có:

rake -T 

Một lợi ích lớn khác của mầm, khi được cài đặt, là nó cung cấp máy phát điện dự án, lớp và thử nghiệm sẽ nhận được bất kỳ hộp phát triển nào sẵn sàng chạy với một vài thao tác dòng lệnh đơn giản.

# 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 
+0

Cảm ơn bạn đã giới thiệu về cào, nhưng tôi đã tìm kiếm về kiến. BTW, kịch bản lệnh shell "mxmlc" sẽ là một dòng. – chro

Các vấn đề liên quan