IntelliJ Generate Ant Build for Adobe AIR

I'm developing Adobe AIR application with IntelliJ.
I want to be able to add CI server to build our project.
I try to use the Generate Ant Build but the resulting script only copy the source .as files to the ourput directory.

Does this option should work with Adobe AIR applications?

Thank you,
Ido.

3 comments

Unfortunately Generate Ant Build doesn't work for Flex/AIR/ActionScript.
Here's some info in IntelliJ IDEA Flash compilation, the same as you received via support channel.

IntelliJ IDEA supports 3 ways of building Flash projects:

  1. If  Flash build configuration is marked as 'Pure ActionScript', AIR SDK  contains ActionScript Compiler 2.0 and 'Prefer ASC 2.0' is checked in  Settings | Compiler | ActionScript & Flex Compiler then IntelliJ  IDEA simply runs ASC 2.0 from the SDK. This is the default option for  Pure AS apps.

  2. Default  option for Flex apps is 'Built-in compiler shell. It does the same as  #3 (see next), the difference is that parallel compilations are started  in different threads within the same OS process. This mode can't be used  outside of IntelliJ IDEA.

  3. 'mxmlc/compc' processes (Settings | Compiler | ActionScript & Flex Compiler). IntelliJ IDEA simply runs mxmlc or compc.

Command  line used to start compiler is printed in the Messages tool window and  compilers #1 and #3 can be easily run outside of IntelliJ IDEA. IDE  generates temporary compiler configuration files that are deleted after  compilation. There's a secret option that allows to keep these  temporary files: add

-Didea.keep.flex.temporary.files=true
to the .vmoptions file.
0

Hi,
Thank you very much for your answer. I saw you gave this answer to your support guy as well.

I'll be glad if you can help me figure out the best way to have CI for AIR application.

Even if I'll use the secret parameter and use the generated flex-config files three problems will remain:
1. I'll have to remember to re-export the flex-config file each time someone in the team modify the our project iml file
2. I have to change some of the flex-config file because the CI server will have different path and the flex-config has absolute path and not env-var
3. I'll have to write a batch command file to execute acompc and amxmlc to process the flex-config files.

I did all of those things on my machine and it looks like everything is working but it will require high mantanance.

Is there better way to have CI for AIR app using IntelliJ as IDE?

Thank you,
Ido.

0

I'll talk to TeamCity folks about the problem.
So far I'm afraid you have to do exactly what you have written. Some minor clarification: do not use amxmlc/acompc, use mxmlc/compc, all AIR specific options are added by the config file generated by the IDE. You can even use java command line  instead of running mxmlc/compc script, IDE goes this way, see Messages tool window.

0

Please sign in to leave a comment.