...
Mavenig the AIR "runtime" artifacs
In order to sensibly generate runtime artifacts, I think we first have to find out how these artifacts would need to be used at all. Simply zipping them up doesn't seem to be a good idea.
Mavenizing Flash
In contrast to the Air runtime, the Flash part is a lot simpler, it generally consists of two files only. One runtime libary and the player/debugplayer itself.
The ActionScript library is located in directories called "frameworks/libs/player/{version}", where the library itself is allways called "playerglobal.swc".
The Flashplayer / Flashdebugger is located in directoried called "runtmes/player/{version}/{os-code}". Depending on the os there are different target files.
Depending on the Flex version it seems some times the players were shipped and sometimes the debugger versions:
Directory | OS Type | Player Name | Debugger Name |
---|---|---|---|
lnx | Linux | flashplayer.tar.gz | flashplayerdebugger.tar.gz |
mac | Mac | Flash Player.app.zip | Flash Player Debugger.app.zip |
win | Windows | FlashPlayer.exe | FlashPlayerDebugger.exe |
In contrast to the Mac zip files, the linux archives are a little tricky, as Java can't natively process them. For this we need to re-package them.
For this they are first unzipped and the resulting file is untared. The unpacked flash runtimes should now be a statically linked version consisting of only one file (flashplayer or flashplayerdebugger). When mavenizing these files are copied to the maven local repository instead of the archives.
Mavenizing the other artifacts simply consists of copying these files to the groupId "com.adobe.flash.runtime":
Code Block |
---|
<dependency>
<groupId>com.adobe.flash</groupId>
<artifactId>runtime</artifactId>
<version>{version}</version>
<type>exe</type>
</dependency> |
Eventually it would be good to have a classifier of "debugger" appied to the debug runtimes artifacts.
Mavenizing Flex