11

私たちのプロジェクトには、アーティストが CS3 で作成した多数 (数百) の FLA ファイルがあり、そこから SWF をコンパイルして Flex/AS3 アプリケーションで使用します。

合理化されたビルド/デプロイ システムの一部として、これらすべての FLA のパブリッシュを自動化し、理想的には SWF もデプロイできると非常に便利です。JSFL を使用して CS3 からバッチ パブリッシュを実行する方法をいくつか見つけましたが、CS3 にはこのためのコマンド ライン機能がないようであることに驚きました。

これは価値のあるLinuxシステム上にあります.JSFLの経験がなく、コマンドラインからスクリプトを実行できるかどうかを知りませんか?

: 「Linux が望ましい」と言うべきでした... 私は Linux を使用していませんが、私たちのサーバー/ビルド PC は Linux です... CS3 に互換性がないとは知らなかったので、この部分は Windows でも実行できると思います.

4

4 に答える 4

9

次のように、コマンドラインから JSFL スクリプトを実行します。

Windows の場合:"c:\program files\macromedia\flash 8\flash.exe" myscript.jsfl

Mac の場合:open myscript.jsfl

以前のバージョンの Flash は Wine で問題なく動作したと思いますが、CS3 については確信が持てません。

ローカル ファイルのバッチを反復処理するには、次のようにします (JSFL で):

var importFolder = fl.browseForFolderURL('Select a folder with existing FLA files');
var importFolderContents = FLfile.listFolder(importFolder);
for (i = 0; i <importFolderContents.length; i++) {
    file = importFolderContents[i];
    fl.openDocument(file); // and so on
}

そして、おそらく調査したい他のいくつかの方法は..

fl.getDocumentDOM() document.exportSWF() document.publish() fl.closeDocument()

于 2009-01-28T16:27:14.167 に答える
2

Linux で Flash CS3 をどのように実行していますか? コマンド ラインから JSFL を実行することはできませんが、FLA ファイルのコンパイルは可能です。

古い例 http://www.mikechambers.com/blog/2003/11/01/flashcommand-flash-2004-command-line-compiler/

Mike Chambers からの新しいもの http://code.google.com/p/flashcommand/ for OSX

半自動化されたIDEパブリッシングを通じてのみ可能なようです。

残念ながらFlexコンパイラはそのようなことはできません.ANTタスクと一緒にそれはキラーです.FDTエディタでは物事はかなりクールで自動化されています.

于 2008-11-04T16:01:04.933 に答える
1

すでに述べたように、JSFL スクリプトを使用することは可能ですが、Adobe Flash Professional と通信してプロセスを stdout に記録し、コンパイル結果に基づいて終了コードを提供するコマンド ライン ツールが必要です。

私はこのツールを自分で作成しましたhttps://www.npmjs.com/package/flc。これは基本的に、Adobe Flash Professional を抽象化するコマンド ライン インターフェイスです。Flash Pro 2014 および 2015 に対してテスト済み。

于 2016-09-07T20:02:02.623 に答える
0

そのとおり。実際、私はエンド ツー エンドのソリューションを構築しました。これは、ボタンをクリックするだけで、クラス ファイルをバージョン タイム スタンプで更新し、まだ開いていない場合は Flash を開き、個々のファイルを公開用に開き、各ファイルの公開が完了したときにプロセス間通信を介して自動化プログラムを実行し、タイミングの問題が発生しないようにし、完了時に特定のファイルを Web に展開します (それらを自動的にバックアップしてファイル名にタイムスタンプを付けた後)、およびプロセス全体10秒以内に完了します。

ここで私の Q&A を参照してください: FLA ファイルの公開の自動化。Process.Start を複数回呼び出す

于 2014-05-07T21:12:59.477 に答える