簡體   English   中英

無法通過Davik VM執行.java文件

[英]Unable to execute .java file through Davik VM

我正在跟蹤此鏈接,我首先已成功執行了此命令。

javac <path + filename>.java 

然后,當我嘗試執行以下命令后,遇到錯誤“ 類名與路徑不匹配 ”。

dx --dex --output=<path + filename>.dex <path + filename>.class

我對.class和.java使用相同的名稱,但我想我必須編寫.class文件名的顯式路徑。 那么現在該怎么辦。 我正在執行一些小錯誤,但找不到。

您的命令似乎是錯誤的:

dx --dex --output=.dex .class

你有嘗試過嗎?

dx --dex --output=YourClass.dex YourClass.class

dx對您提供的路徑很挑剔-類文件相對於您的工作目錄的相對路徑必須與該類的包相匹配。

例如,如果您的命令是

dx --dex --output=classes.dex out/com/example/HelloWorld.class

然后dx假設HelloWorld的程序包名稱應為out.com.example,如果不是,則進行抱怨。

但是,有一個竅門-您可以在提供dx的路徑中添加一個/./路徑組件,以相對於Java包指定“根”所在的位置。 如果前一個示例中的軟件包實際上是com.example,則可以執行以下操作:

dx --dex --output=classes.dex out/./com/example/HelloWorld.class

另一個選項是使用--no-strict選項,該選項禁用dx的路徑檢查。

為避免幻數問題,請先檢查您的jdk版本,jdk 1.7 *似乎有問題。 我恢復到jdk 1.6。

不用使用dx --dex --output=<path + filename>.dex <path + filename>.class我們可以做一件事將一個或所有.classes文件放在一個文件夾中,例如classFolder現在發出以下命令:

dx --dex --output=YourClass.dex  absolutePath/classFolder 

dx命令將選擇該文件夾中的一個或所有類文件。

暫無
暫無

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

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