恢弘志士之气,不宜妄自菲薄。这篇文章主要讲述在Android Studio导入期间维护目录结构相关的知识,希望能为你提供帮助。
我克隆了一个公共github存储库,并尝试将其导入android Studio 0.4.4。导入工作很好,但它想将所有源复制到新目录并为源创建“app”目录。由于我使用的是公共存储库,因此我想使用repo克隆目录并保持目录结构,以便我可以获得更新并推送更改,而无需每个方向复制文件。
有没有办法告诉Android Studio在导入时保持给定的目录结构?
或者,换句话说,有没有办法跳过gradle转换并按原样导入源?
提前致谢。
答案目前,我们在Eclipse项目导入中没有选项来保留现有的目录结构。如果您安装了Eclipse的副本,则可以在那里打开它,然后将项目导出到Gradle构建文件;
进行就地出口。您必须修改它导出的构建文件,因为它指定了一个非常旧版本的插件。具体来说,您必须更新dependencies.buildscript.classpath
语句以指定0.8。+,并且还更新gradle / wrapper / gradle-wrapper.properties文件中的distributionUrl
属性以指定Gradle 1.10。
【在Android Studio导入期间维护目录结构】如果您没有Eclipse,则可以使用此样板文件build.gradle文件来帮助您入门。将其复制到项目的根目录中:
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.8.+'
}
}
apply plugin: 'android'dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}android {
compileSdkVersion 19
buildToolsVersion "19.0.1"sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
}// Move the tests to tests/java, tests/res, etc...
instrumentTest.setRoot('tests')// Move the build types to build-types/<
type>
// For instance, build-types/debug/java, build-types/debug/AndroidManifest.xml, ...
// This moves them out of them default location under src/<
type>
/... which would
// conflict with src/ being used by the main source set.
// Adding new build types or product flavors should be accompanied
// by a similar customization.
debug.setRoot('build-types/debug')
release.setRoot('build-types/release')
}
}
接下来,将此settings.gradle文件放在根目录中。
include ':'
接下来,从您创建的另一个项目的根目录中复制gradlew和gradlew.bat文件以及gradle目录,以在项目中安装包装器。
它完整??了。您现在应该可以在Android Studio中导入它并使用它。
另一答案以下是我将项目从Eclipse ADT转换为Android Studio同时保留git历史记录的步骤:
- 将我的项目目录重命名为Project.eclipse
- 选择“从非Android Studio项目导入”
- 为它提供目标目录的原始项目名称(它将创建特定于目录的文件并使用该名称)
- 完成转换后,请确保它已编译。
- 关闭Android Studio
- 将新项目目录重命名为Project.astudio
- 将原始Eclipse ADT项目目录重命名回原始目录名称
- 读取导入器创建的import-summary.txt文件,并使用git命令重新创建它手动列出的所有更改(通常包括将AndroidManifest.xml以及source和res文件移动到新的目录路径中
- 将.gitignore文件更改为如下所示:
.gradle /local.properties /.idea/workspace.xml /.idea/libraries .DS_Store /build /app/build
- 比较目录并将新项目中不属于旧项目的任何文件复制回来(通常是gradle和idea文件),然后“git add”它们。不要忘记任何新创建的子项目中的build.gradle文件(其中至少包含一个主应用程序)
- 使用git命令从原始项目中删除任何不存在于新项目中的文件,而不是故意放在那里(即保留README和LICENSE文件等,但是要记住剩余的eclipse项目数据)
- 在上述过程中经常使用“git status”来查看匹配/不匹配的内容,并根据需要添加git add或git rm。
- 尝试在Android Studio中打开项目,确保它正确打开,并构建它。如果一切都检查出来......
- 关闭Android Studio
- git commit
另一答案在将eclipse导入android studio后,你也可以更改android studio项目,这样android studio项目将使用与eclipse项目相同的目录结构。 方法如下: 请参阅链接Can we have project without app folder in android studio with everything (java/res/etc) in root
推荐阅读
- 从app inventor中的google sheet调用用户名和密码
- 如何在android中的日历上的特定日期设置点
- RecyclerView smoothScroll位于中心位置。安卓
- 在Android中创建用户可选择的字符串列表的最简单方法是什么()
- 使用回收视图时无法在Android模拟器中看到应用栏
- Android TV RecyclerView重点互动
- 如何解决无法识别应用的tf.app.run()错误()
- 重复条目(android / support / v7 / recyclerview / extensions / ListAdapter.class [复制])
- 适用于所有移动设备的Webview App并上传到Play商店