Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MXMLC and 64bit JRE

Are there any workarounds to get the Flex compiler to work with a 64bit JRE? If I use an MXMLC task in an Ant buildfile in Eclipse it works fine but if I try to use MXMLC from the command line (or try the Run... command from FDT in Eclipse) it fails, telling me ...

"Error loading: C:\Program Files\Java\jrrt-1.6.0\jre\bin\jrockit\jvm.dll"

(this is with a 64bit JRockit runtime but that shouldn't matter).

like image 860
BadmintonCat Avatar asked Jun 02 '10 05:06

BadmintonCat


2 Answers

There is currently no support for using the Flex compiler with the 64 bit JRE. Instead, have the compiler use a 32 bit JRE.

To do so, you'll need to edit the jvm.config file located in FLEX_HOME\bin. Within jvm.config, set java.home to the location of a 32bit JRE. If you don't already have a 32bit JRE, download it.

Example:

java.home=C:/Program Files (x86)/Java/jre6

If you like this answer, please click the up arrow to the left.

like image 89
Julian A. Avatar answered Oct 12 '22 17:10

Julian A.


You can use any 64 bit Java but you need a batch file instead of the exe file to invoke java without the 32 bit stub. Create the bat files in the flex\bin folder.

mxmlc.bat:

@echo off
for  %%i in (%0) do set FLEX_HOME=%%~dpi..
java -jar "%FLEX_HOME%\lib\mxmlc.jar" +flexlib="%FLEX_HOME%/frameworks" %*

compc.bat:

@echo off
for  %%i in (%0) do set FLEX_HOME=%%~dpi..
java -jar "%FLEX_HOME%\lib\compc.jar" +flexlib="%FLEX_HOME%/frameworks" %*

Rinse and repeat for all other flex *.exe files.

Also add java options as needed, e.g.

java -Xmx2000m -XX:MaxMetaspaceSize=512m -jar "%FLEX_HOME%\lib\... ...

Now use

  • mxmlc.bat instead of mxmlx.exe
  • compc.bat instead of compc.exe
  • ...
like image 7
bebbo Avatar answered Oct 12 '22 16:10

bebbo