MXMLC和64位JRE

时间:2010-06-02 05:48:00

标签: flash 64-bit java mxmlc

是否有任何变通方法可以使Flex编译器与64位JRE一起使用?如果我在Eclipse中的Ant构建文件中使用MXMLC任务它可以正常工作但是如果我尝试从命令行使用MXMLC(或者从Eclipse中的FDT尝试Run ...命令)它会失败,告诉我......

“加载时出错:C:\ Program Files \ Java \ jrrt-1.6.0 \ jre \ bin \ jrockit \ jvm.dll”

(这是一个64位的JRockit运行时,但这无关紧要。)

2 个答案:

答案 0 :(得分:83)

目前不支持将Flex编译器与64位JRE一起使用。相反,让编译器使用32位JRE。

为此,您需要编辑位于FLEX_HOME \ bin中的jvm.config文件。在jvm.config中,将java.home设置为32位JRE的位置。如果您还没有32位JRE,请下载它。

示例:

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

如果您喜欢这个答案,请点击左侧的向上箭头。

答案 1 :(得分:7)

你可以使用任何64位Java,但你需要一个批处理文件而不是exe文件来调用没有32位存根的java。在flex \ bin文件夹中创建bat文件。

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" %*

冲洗并重复所有其他flex * .exe文件。

还根据需要添加java选项,例如

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

现在使用

  • mxmlc.bat而不是mxmlx.exe
  • compc.bat而不是compc.exe
  • ...