簡體   English   中英

試圖運行ant - 獲取錯誤

[英]Trying to run ant - getting error

我剛剛安裝了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>

那個文件 - 絕對是jvm.dll。 我嘗試以相同的結果作為管理員運行。

要安裝,我運行了JDK安裝程序(我已經安裝了JRE),我在環境變量中設置了JAVA_HOME。 我解壓縮了ant並將我的ant bin目錄添加到了PATH中。

我對Java一無所知,以及它是如何工作的,所以我有點迷失了。

我在64位Windows 7.我下載了64位JDK。

任何幫助非常感謝。

你必須將你的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.

它看起來好像ant腳本正在運行本機程序,而本機程序又試圖加載JVM來運行一些java代碼,並且失敗了。 我猜想32位和64位之間存在不匹配。 在這個理論中,您嘗試運行的程序包使用的是32位Windows可執行文件,它無法使用LoadLibrary 64位JVM DLL。

一個更簡單的解釋是,Java宇宙中的許多東西都被路徑名上的空格弄糊塗了。 嘗試在沒有嵌入空格的路徑名中安裝JDK。

您可以通過在flex-sdk bin目錄中使用以下命令創建bat文件來解決此問題:

"%JAVA_HOME%\bin\java.exe" -Xmx384m -Dsun.io.useCanonCaches=false -jar "%~dp0\..\lib\mxmlc.jar" +flexlib="%~dp0\..\frameworks" %*

然后調用此bat文件而不是mxmlc.exe

注意:解決方案可在https://web.archive.org/web/20120327204229/http://sray.squidpower.com/2010/01/13/solution-to-error-running-mxmlcexe-with-windows-64bit找到-jvm /

令我驚訝的第一部分是它嘗試使用服務器JVM而不是常規服務器,但這可能是您構建的一個功能。 我要嘗試的第二件事是運行ant -v而不是普通的ant。 這應該會給你更多的輸出,並希望有更多關於螞蟻在這個時間點嘗試做什么的信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM