I have been developing ActionScript apps for half a year or so. As far as I can see, mxmlc compiler is just a sh-script to call javac –{options} in more convenient way. This gives me an idea that my source code is compiled into native java byte-code.
From all above I can conclude that either Flash Player should require JVM installed or be a JVM itself. Or maybe Java is used to generate Adobe custom binary file just as any other compiler would do, but Java is cross-platform and an industry standard, so to avoid portability problems Adobe (Macromedia) could choose in for ActionScript/Flex.
Can you explain to me this?
The development environment for ActionScript is written in Java, but compiling ActionScript does not result in a Java-compatible binary. Instead, it compiles to a binary which runs on the ActionScript Virtual Machine. So Flash Player has a virtual machine, but it is not Java-related.