这个周末,我试图将一些项目迁移到Android Studio,但遇到了一些障碍。我的最后一次尝试涉及使用带有插件版本22.0.5v201307292155-757759的Eclipse ADT创建一个简单的Hello World Android项目。我创建了该项目,目标是带有最低SDK 2.3的Android版本4.2,并使用4.3进行了构建。我在AVD上进行了快速的构建/运行测试,一切正常。然后,我按照迁移文档中的说明进行了项目导出并为Android Studio生成了我的Gradle构建文件。当我尝试使用捆绑的gradle发行版(1.7)导入Android Studio 0.2.6 Build#AI-130.795381时,出现错误:“原因:未能找到目标android-18”,在idea.log中带有堆栈跟踪:
2013-08-31 16:04:31,465 [ 517146] INFO - ject.ProjectImportErrorHandler - Failed to import Gradle project at '/Users/clifton/workspace/MyOtherLilAndroid'
org.gradle.tooling.BuildException: Could not fetch model of type 'AndroidProject' using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.
at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:55)
at org.gradle.tooling.internal.consumer.async.DefaultAsyncConnection$2.run(DefaultAsyncConnection.java:71)
当我尝试使用Gradle Wrapper(推荐)时,出现错误:无法使用Gradle发行版' http://services.gradle.org/distributions/gradle-1.6-bin.zip '执行构建。构建文件'/Users/clifton/workspace/MyOtherLilAndroid/build.gradle'行:9评估根项目'MyOtherLilAndroid'时发生问题。评估根项目“ MyOtherLilAndroid”时发生问题。找不到SDK位置。在local.properties文件中使用sdk.dir或使用ANDROID_HOME环境变量来定义位置。
在idea.log中具有以下堆栈跟踪:
2013-08-31 16:05:24,414 [ 570095] INFO - s.plugins.gradle.GradleManager - Instructing gradle to use java from /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
2013-08-31 16:05:24,415 [ 570096] INFO - s.plugins.gradle.GradleManager - Instructing gradle to use java from /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
2013-08-31 16:05:27,840 [ 573521] WARN - nal.AbstractExternalSystemTask - Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.
Build file '/Users/clifton/workspace/MyOtherLilAndroid/build.gradle' line: 9
A problem occurred evaluating root project 'MyOtherLilAndroid'.
A problem occurred evaluating root project 'MyOtherLilAndroid'.
SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
com.intellij.openapi.externalSystem.model.ExternalSystemException: Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.
Build file '/Users/clifton/workspace/MyOtherLilAndroid/build.gradle' line: 9
A problem occurred evaluating root project 'MyOtherLilAndroid'.
A problem occurred evaluating root project 'MyOtherLilAndroid'.
SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
at org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.ensureInstalledWrapper(GradleExecutionHelper.java:198)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:66)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:44)
我尝试下载Gradle 1.7并将其用于导入,但出现另一个错误:“原因:无法找到目标android-18
构建文件:“ / Users / clifton / workspace / MyOtherLilAndroid / build.gradle”
在idea.log中使用以下堆栈跟踪:
2013-08-31 16:08:01,214 [ 726895] INFO - s.plugins.gradle.GradleManager - Instructing gradle to use java from /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
2013-08-31 16:08:01,214 [ 726895] INFO - s.plugins.gradle.GradleManager - Instructing gradle to use java from /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
2013-08-31 16:08:09,075 [ 734756] INFO - ject.ProjectImportErrorHandler - Failed to import Gradle project at '/Users/clifton/workspace/MyOtherLilAndroid'
org.gradle.tooling.BuildException: Could not fetch model of type 'AndroidProject' using Gradle installation '/Users/clifton/java-apps/gradle-1.7'.
at org.gradle.tooling.internal.consumer.ResultHandlerAdapter.onFailure(ResultHandlerAdapter.java:55)
at org.gradle.tooling.internal.consumer.async.DefaultAsyncConnection$2.run(DefaultAsyncConnection.java:71)
at org.gradle.internal.concurrent.DefaultExecutorFactory$StoppableExecutorImpl$1.run(DefaultExecutorFactory.java:66)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
at java.lang.Thread.run(Thread.java:680)
at org.gradle.tooling.internal.consumer.BlockingResultHandler.getResult(BlockingResultHandler.java:46)
at org.gradle.tooling.internal.consumer.DefaultModelBuilder.get(DefaultModelBuilder.java:46)
at com.android.tools.idea.gradle.project.ProjectResolver$1.fun(ProjectResolver.java:206)
at com.android.tools.idea.gradle.project.ProjectResolver$1.fun(ProjectResolver.java:199)
at org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.execute(GradleExecutionHelper.java:148)
at com.android.tools.idea.gradle.project.ProjectResolver.getAndroidProject(ProjectResolver.java:199)
at com.android.tools.idea.gradle.project.ProjectResolver.resolveProjectInfo(ProjectResolver.java:136)
at com.android.tools.idea.gradle.project.AndroidGradleProjectResolver$ProjectResolverFunctionFactory$1.fun(AndroidGradleProjectResolver.java:151)
at com.android.tools.idea.gradle.project.AndroidGradleProjectResolver$ProjectResolverFunctionFactory$1.fun(AndroidGradleProjectResolver.java:145)
at org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.execute(GradleExecutionHelper.java:148)
我已经确认在我的Mac上通过“〜/ .MacOSX / environment.plist”设置了ANDROID_HOME,并在我的“〜/ .bash_profile”来源的“〜/ .bashrc”中进行了设置,最后我尝试设置sdk。项目的local.prooperties中的dir和ndk.dir。使用捆绑的gradle,我在idea.log中收到此错误:
2013-08-31 16:14:15,943 [1101624] INFO - dle.util.AndroidGradleSettings - Found Android SDK home at '/Users/clifton/android-sdk-macosx' (from local.properties file)
2013-08-31 16:14:18,207 [1103888] INFO - ject.ProjectImportErrorHandler - Failed to import Gradle project at '/Users/clifton/workspace/MyOtherLilAndroid'
org.gradle.tooling.BuildException: Could not fetch model of type 'AndroidProject' using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.
和此堆栈跟踪与gradle包装器:
2013-08-31 16:15:59,616 [1205297] WARN - nal.AbstractExternalSystemTask - Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.
Task 'wrapper' not found in root project 'MyOtherLilAndroid'.
com.intellij.openapi.externalSystem.model.ExternalSystemException: Could not execute build using Gradle distribution 'http://services.gradle.org/distributions/gradle-1.6-bin.zip'.
Task 'wrapper' not found in root project 'MyOtherLilAndroid'.
at org.jetbrains.plugins.gradle.service.project.GradleExecutionHelper.ensureInstalledWrapper(GradleExecutionHelper.java:198)
at org.jetbrains.plugins.gradle.service.project.GradleProjectResolver.resolveProjectInfo(GradleProjectResolver.java:66)
at
是什么赋予了?是否有人成功将项目迁移到Android Studio?我在困难的时候尝试吗?我了解这些工具仍在大量开发中。请指教。
对于上述问题,我已经找到了大多数答案。我的问题源于刚打开一个全新的MAcbook Pro并重新安装了所有工具(ADT / IntelliJ / Android Studio)。一个复杂的问题是,我安装了两个不同的Android SDK,一个与ADT捆绑在一起,另一个与Android Studio捆绑在一起。我最初在我的主驱动器(〜/ android-sdk-macosx)中建立了一个指向ADT捆绑软件SDK的符号链接,因为所有其他命令行工具(在我的其他项目中)都配置为在此处查找。我开始注意到在其中一个中创建的AVD无法在另一个中正常启动,这促使我替换了上面的符号链接,并将其指向AS SDK。
长话长说...我对SDK的混淆使ADT导出了一个项目,该项目仍发现捆绑的SDK中的构建工具18无法在Android Studio中导入。其他错误仅仅是掩盖和混淆了潜在的问题。(他们是徒劳地试图迫使该项目导入。)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句