读书人

flex asdoc命令 jvm.dll加载异常

发布时间: 2012-09-14 11:53:44 作者: rapoo

flex asdoc命令 jvm.dll加载错误

版权所有,转载请注明来源http://gogo1217.iteye.com,违者必究!

?

错误表现

在使用flex的asdoc命令时,出现如下错误:
C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\sdks\4.5.0\bin>asdoc
Error loading: C:\Program Files\Java\jdk1.6.0_26\jre\bin\server\jvm.dll

?

原因分析:

系统环境

win7 64位、系统环境变量的JAVA_HOME指向的是64位版本的jdk、flash Builder版本为4.5。

1、文件C:\Program Files\Java\jdk1.6.0_26\jre\bin\server\jvm.dll的确存在

2、在flex的sdk目录下找到配置文件jvm.config,该文件中描述了java的目录查找方式。

#
# VM configuration
#
# Where to find JVM, if {java.home}/jre exists then that JVM is used
# if not then it must be the path to the JRE itself
#
# If no java.home is specified a VM is located by looking in these places in this
# order:
#
#? 1) JAVA_HOME environment variables (same rules as java.home above)
#? 2) bin directory for java.dll (windows) or lib/<ARCH>/libjava.so (unix)
#? 3) ../jre
#? 4) registry (windows only)
#

java.home=

?

当没有配置时,会优先查找JAVA_HOME路径,而我的环境中JAVA_HOME配置的是64位的JDK;flex需要调用的是32位的jvm.dll,因此加载失败。

?

解决办法:

可以指定java.home=变量的值,使得优先查找配置的变量。将该变量改为flash Builder自带的jre或者其他32位的Jre,flash Builder自带的jdk目录为C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\jre。

修改为java.home=../../../jre? 或者 java.home=C:\Program Files (x86)\Adobe\Adobe Flash Builder 4.5\jre

使用相对路径或绝对路径都可以。

?

注意:使用相对路径时,不能在其他路径执行asdoc,如? 不能在D:\workspaces下执行asdoc,而是用绝对路径则没有这样子的问题。

?

读书人网 >flex

热点推荐