9

我已经从 Eclipse 迁移了一个项目。该项目仍然具有来自 eclipse 的“旧”项目文件结构(请参阅http://developer.android.com/tools/projects/index.html)。有没有办法自动将文件结构更改为新系统(请参阅http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Project-Structure)?如果我正确理解http://developer.android.com/sdk/installing/studio-tips.html项目结构部分,这应该在迁移时发生,但它没有(可能是我的错误)。所以我再次提出问题:是否可以自动更改文件结构?如果不是,我需要改变什么?我必须在 build.gradle 中更改什么?什么是过时的文件/目录?

谢谢!

斯蒂芬

4

1 回答 1

4

在将您的项目从 Eclipse 迁移到 Android Studio 时,项目结构没有进行任何更改。唯一改变的是新的 .iml 和 .gradle 文件。

您的 java 代码保留在 project/src/ 文件夹中,并且没有被移动到project/src/main/java文件夹中(就像在 AndroidStudio 中新创建的项目中一样)。

您的 AndroidManifest 文件也保留在 project/ 文件夹中,并且没有被移动到project/src/main/文件夹中(就像在 AndroidStudio 中新创建的项目中一样)。

在迁移时,build.gradle为了能够使用旧结构进行编译,文件是定制的,在 gradle 文档中有所描述:配置结构

对于 AndroidStudio 中新创建的项目,build.gradle 文件的 sourceSets 部分:

sourceSets {
    main.java.srcDirs = ['src/java']
    main.resources.srcDirs = ['src/resources']
}

对于从 Eclipse 迁移的项目,build.gradle 文件的 sourceSets 部分必须是:

android {
    sourceSets {
        main {
            manifest.srcFile 'AndroidManifest.xml'
            java.srcDirs = ['src']
            resources.srcDirs = ['src']
            aidl.srcDirs = ['src']
            renderscript.srcDirs = ['src']
            res.srcDirs = ['res']
            assets.srcDirs = ['assets']
        }

        instrumentTest.setRoot('tests')
    }
}

有了它,您应该能够自定义您的项目结构并相应地构建。

于 2013-08-06T20:26:22.687 回答