【问题标题】:Change project file structure after migrating from Eclipse to Android Studio gradle structure从 Eclipse 迁移到 Android Studio gradle 结构后更改项目文件结构
【发布时间】:2013-07-20 12:37:25
【问题描述】:

我已经从 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 Project Structure 部分,这应该在迁移时发生,但它没有 (也许是我的错误)。 所以我再次提出问题:是否可以自动更改文件结构?如果不是,我需要改变什么?我必须在 build.gradle 中更改什么?什么是过时的文件/目录?

谢谢!

斯蒂芬

【问题讨论】:

  • 欢迎来到 Stackoverflow!如果您发现回复有帮助,请投票。如果回复成功回答了您的问题,请点击旁边的绿色复选标记接受答案。另请查看 stackoverflow.com/questions/how-to-ask 以获取有关如何编写好问题的建议

标签: android android-studio eclipse-adt project-structure build.gradle


【解决方案1】:

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

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

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

在迁移时,build.gradle 文件是定制的,以便能够使用旧结构进行编译,在 gradle 文档中进行了描述:Configuring the Structure

对于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')
    }
}

这样,您应该能够自定义您的项目结构并进行相应的构建。

【讨论】:

  • 为什么 Eclipse 不使用 main 迁移到 Studio?什么原因?优点/缺点?
  • 我不确定,但我认为这是为了向后兼容:也许 Ant 无法编译想法风格的项目(带有主文件夹)。您可以手动完成,然后简化您的 build.gradle 文件
  • 我是手动完成的,有点棘手,但它确实有效(在 Studio 中生成了一个虚拟项目进行比较),如果有一个可供选择的选项会很好...谢谢...
  • 做了同样的事情:学习如何制作创意项目的好方法。
猜你喜欢
  • 2015-10-03
  • 2013-06-30
  • 1970-01-01
  • 2020-01-13
  • 1970-01-01
  • 2015-04-27
  • 1970-01-01
  • 2020-04-11
  • 2015-03-14
相关资源
最近更新 更多