试图运行ant - 获取错误

Roa*_*ers 4 java ant

我刚刚安装了ant和JDK 6,我正在尝试运行一个ant任务.我得到以下内容:

C:\Users\Giles Roadnight\workspace\Parsley\build>ant compile_spicelib_complete_flex
Buildfile: build.xml
compile_spicelib_complete_flex:
[exec] Error loading: C:\Program Files\Java\jdk1.6.0_17\jre\bin\server\jvm.dll
[exec] Result: 6

BUILD SUCCESSFUL
Total time: 0 seconds
C:\Users\Giles Roadnight\workspace\Parsley\build>
Run Code Online (Sandbox Code Playgroud)

那个文件 - 绝对是jvm.dll.我尝试以相同的结果作为管理员运行.

要安装,我运行了JDK安装程序(我已经安装了JRE),我在环境变量中设置了JAVA_HOME.我解压缩了ant并将我的ant bin目录添加到了PATH中.

我对Java一无所知,以及它是如何工作的,所以我有点迷失了.

我在64位Windows 7.我下载了64位JDK.

任何帮助非常感谢.

小智 11

你必须将你的flex解压缩到某个文件夹.我将此文件夹称为flex_sdk.

将flex_sdk添加到FLEX_HOME环境变量(如有必要,创建环境变量).Flex编译器需要32位JRE,因为目前不支持64位JRE.为此,首先下载一个32位(或X86)版本的jdk,然后将flex sdk指向它.为此,您需要编辑位于FLEX_HOME\bin中的jvm.config文件.在jvm.config中,将java.home设置为32位JDK的位置,如图所示.(注意,这些不是反斜杠)

示例:java.home=C:/Program Files (x86)/Java/jdk1.6.0_25或者,您也可以添加具有名称的环境变量,JAVA_HOME并在无法找到jvm.config文件时将其指向上述位置.

/ 我有同样的问题,并研究了几天.尝试了100多个类路径和大量已损坏的注册表问题.上述解决方案似乎对我有用.让我知道它是否也适合你 /

-Prasad K.


bma*_*ies 5

在我看来,ant 脚本似乎正在运行一个本机程序,该程序又尝试加载 JVM 来运行一些 java 代码,但失败了。我猜测 32 位和 64 位之间存在不匹配。从理论上讲,您尝试运行的包使用 32 位 Windows 可执行文件,该可执行文件无法 LoadLibrary 64 位 JVM DLL。

一个更简单的可能解释是,Java 世界中的许多事情都会被路径名上的空格所迷惑。尝试将 JDK 安装在不带嵌入空格的路径名中。