簡體   English   中英

java.io.IOException:無法運行程序“ dx”:error = 2,沒有這樣的文件或目錄

[英]java.io.IOException: Cannot run program “dx”: error=2, No such file or directory

def result = "dx --dex --output=${aarDex}   ${classesJar}".execute()

我使用groovy在gradle-plugin中執行此代碼,但它在控制台中給了我一個錯誤信息:

失敗:構建失敗,發生異常。

什么地方出了錯:

任務':app:fakeDexDebug'的執行失敗。 java.io.IOException:無法運行程序“ dx”:error = 2,沒有這樣的文件或目錄

我在終端上執行dx可以。我浪費了七個小時來解決它,但是這個bug還在運行。你能告訴我為什么我不能這樣做。

該錯誤意味着可執行文件dx不包含在與您一起執行Gradle的用戶的PATH變量中。

但是無論如何,如果您在Gradle中,建議不要使用Groovy String.execute()方法,而是創建執行程序的Exec類型的任務,或者如果它是一項任務的多個動作的一部分,具有與Exec任務相同功能的exec()方法。

在Windows系統中使用dx.bat而不是簡單地使用dx

做一個gradle任務,如下所示會更容易

task makeDex(type: Exec) {
    workingDir '.'
    commandLine "dx.bat", "--dex", "--output", "E:\\output.dex", "E:\\input.jar"
}

暫無
暫無

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

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