Android Studio - 空项目的意外顶级异常

时间:2014-08-22 03:01:14

标签: android android-gradle

我该如何解决这个问题? 我在一台新计算机上安装了Android Studio,我选择了一个新项目,我按照向导,然后没有添加任何代码,并且在生成的文件中没有更改任何内容我试图运行新的应用程序。 这就是我得到的:

Error:Execution failed for task ':app:preDexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
    C:\Program Files (x86)\Android\android-studio\sdk\build-tools\19.1.0\dx.bat --dex --output F:\==Android\TestingGradle2\app\build\intermediates\pre-dexed\debug\support-v4-19.1.0-e311e493b238b75da4095bd5ee7b69d76d73dc42.jar C:\Program Files (x86)\Android\android-studio\sdk\extras\android\m2repository\com\android\support\support-v4\19.1.0\support-v4-19.1.0.jar
Error Code:
    1
Output:
    UNEXPECTED TOP-LEVEL EXCEPTION:
    java.io.FileNotFoundException: Android\TestingGradle2\app\build\intermediates\pre-dexed\debug\support-v4-19.1.0-e311e493b238b75da4095bd5ee7b69d76d73dc42.jar (The system cannot find the path specified)
        at java.util.zip.ZipFile.open(Native Method)
        at java.util.zip.ZipFile.<init>(ZipFile.java:220)
        at java.util.zip.ZipFile.<init>(ZipFile.java:150)
        at java.util.zip.ZipFile.<init>(ZipFile.java:164)
        at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
        at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:166)
        at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:144)
        at com.android.dx.command.dexer.Main.processOne(Main.java:596)
        at com.android.dx.command.dexer.Main.processAllFiles(Main.java:498)
        at com.android.dx.command.dexer.Main.runMonoDex(Main.java:264)
        at com.android.dx.command.dexer.Main.run(Main.java:230)
        at com.android.dx.command.dexer.Main.main(Main.java:199)
        at com.android.dx.command.Main.main(Main.java:103)
    1 error; aborting

更新 enter image description here

生成的build.gradle如下所示:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "ro.mycomp.calinutz.testgradle4"
        minSdkVersion 10
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile 'com.android.support:appcompat-v7:20.0.0'
}

问题从一开始就没有发生......我设法在安装后立即创建一个测试应用程序,但后来我尝试导入在另一台计算机(旧计算机)上创建的项目。我没有成功,所以我继续手动重新创建项目(复制相关代码的粘贴)。 最后,当我想运行重新创建的项目时,发生了此错误。从那时起,我开始的任何新空项目都会发生同样的错误。

然而,我仍然可以运行我的第一个测试应用程序?!?!?!?!为什么?为什么那个工作,没有其他项目?我比较了2个build.gradle文件(原始项目和新的空项目),并没有什么区别。 这是否与此Windows 8.1系统上的写权限有关?我以管理员身份启动Android Studio,所以不应该有这样的问题...?但那又是什么呢?

重要 我想我已经缩小了问题:

似乎如果我在分区F上创建新项目而不是分区C,则会发生此错误。

因此,如果我的新项目位于本地磁盘C上 - 它工作正常 如果我的新项目位于本地磁盘F上 - 它会抛出上述错误。

我该怎么办?我无法将所有项目都放在C上,因为它是一个SSD驱动器而且很小。 我转到了属性 - >分享 - >高级共享 - &gt; F驱动器的权限,并将它们设置为完全访问权限。 然后我去了Properties-&gt;安全性并确保其中列出的所有用户都具有对驱动器的完全访问权限。 仍然 - 同样的问题。

请帮帮我 我怎么解决这个问题? 谢谢

1 个答案:

答案 0 :(得分:0)

您已安装支持库版本20,但正在告诉gradle查找版本19.

将依赖关系行更改为:

compile 'com.android.support:support-v4:20.+'

它应该可以正常工作