Android / Maven - 找不到mainDexClasses.txt

时间:2016-02-01 08:34:02

标签: java android maven multidex android-multidex

我和我的团队正在开发一个共享的Android项目。该项目非常适合我的队友和#39;机器,但它不能在我的机器上正确构建。

其中两个拥有Linux机器,另一个拥有Windows。我还有一个Windows操作系统(尤其是Win 10)。 我们使用IntelliJ作为IDE和Maven进行构建/编译。我们都使用相同的settings.xml文件。

我收到以下错误:

Short version: Don't use this.

Slightly longer version: This tool is used by mainDexClasses script to build
the main dex list.
Convert classes to Dex : C:\...\****\****-app\target

UNEXPECTED TOP-LEVEL ERROR:
java.io.FileNotFoundException: C:\...\****\****-app\target\mainDexClasses.txt (The system cannot find the file specified)
    at java.io.FileInputStream.open0(Native Method)
    at java.io.FileInputStream.open(FileInputStream.java:195)
    at java.io.FileInputStream.<init>(FileInputStream.java:138)
    at java.io.FileInputStream.<init>(FileInputStream.java:93)
    at java.io.FileReader.<init>(FileReader.java:58)
    at com.android.dx.command.dexer.Main.readPathsFromFile(Main.java:436)
    at com.android.dx.command.dexer.Main.runMultiDex(Main.java:361)
    at com.android.dx.command.dexer.Main.run(Main.java:275)
    at com.android.dx.command.dexer.Main.main(Main.java:245)
    at com.android.dx.command.Main.main(Main.java:106)
------------------------------------------------------------------------
BUILD FAILURE
------------------------------------------------------------------------


当我从我的一个队友中复制有问题的文件mainDexClasses.txt并将其放在适用的文件夹中时,构建成功(没有清理)。 显然,我不能继续这样做,因为这是一个相当快速和肮脏的解决方案。

这是我的Maven构建配置:-Denv=wiremock -Dfeatures=trunk install android:deploy android:run

有关如何解决此问题的任何想法?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案 mainDexClasses.txt的路径不能包含任何空格,即任何文件夹都不应该在名称中包含空格。