【问题标题】:Android-clean architecture sample programAndroid-clean架构示例程序
【发布时间】:2016-11-06 03:30:12
【问题描述】:

我正在关注http://fernandocejas.com/2014/09/03/architecting-android-the-clean-way/ 的一篇文章,并下载了示例 git hub 项目https://github.com/android10/Android-CleanArchitecture

该项目是使用 gradle 构建的,因为我之前的项目是使用 android 的默认构建器构建的,所以我发现构建项目很难。

我已经搭建好了gradle的环境。但是当我尝试在根文件夹上使用 gradle build 构建项目时,出现此错误。(注意:我使用 Intellij 作为我的 IDE)

我首先在根文件夹中执行 gradle build 但收到此错误:

* Where:

构建文件'/Users/magic/Desktop/android/myProjects/TestingProjects/Android Clean Architecture/Android-CleanArchitecture-master/data/build.gradle' 行:1

  • 出了什么问题:

评估项目 ':data' 时出现问题。

无法应用插件 [id 'android-library']

需要 Gradle 版本 1.10。当前版本是 2.1。如果使用 gradle 包装器,请尝试将 /Users/magic/Desktop/android/myProjects/TestingProjects/Android Clean Architecture/Android-CleanArchitecture-master/gradle/wrapper/gradle-wrapper.properties 中的 distributionUrl 编辑为 gradle-1.10-all。拉链

  • 试试:

使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。

构建失败

所以,我去文件夹 gradle 并将 gradle-wrapper.properties 更改为 gradle-1.10-all.zip 并执行 ./gradlew build 但收到此错误:

FAILURE: Build failed with an exception.
  • 在哪里: 构建文件'/Users/Magic/Desktop/android/myProjects/TestingProjects/Android Clean Architecture/Android-CleanArchitecture-master/data/build.gradle' 行:9

  • 出了什么问题: 评估项目 ':data' 时出现问题。

    在 ProductFlavorDsl_Decorated{name=main, minSdkVersion=-1, targetSdkVersion=-1, renderscriptTargetApi=-1, renderscriptSupportMode=null, renderscriptNdkMode 上找不到参数 [com.fernadocejas.android10.sample.data] 的方法 applicationId() =null,versionCode=-1,versionName=null,packageName=null,testPackageName=null,testInstrumentationRunner=null,testHandleProfiling=null,testFunctionalTest=null,signingConfig=null,resConfig=null}。

  • 尝试: 使用 --stacktrace 选项运行以获取堆栈跟踪。使用 --info 或 --debug 选项运行以获得更多日志输出。

构建失败

它指向第 9 行

 defaultConfig {
applicationId "com.fernandocejas.android10.sample.data" //line 9
minSdkVersion 15
targetSdkVersion 19

}

非常感谢您对此的投入。

谢谢。

【问题讨论】:

    标签: android intellij-idea gradle


    【解决方案1】:

    我刚刚下载了那个项目,将它导入 Intellij 13.1(使用 gradle 包装器),它开箱即用。您对破坏它的 build.gradle 文件进行了更改。如果没有在此处发布所有 gradle 文件,很难说问题出在哪里。 gradle 文件已被修改的一个迹象是您给出的错误之一是:

    Failed to apply plugin [id 'android-library']
    

    但是这个例子没有应用这个插件,它应用了正确的插件,即:

    apply plugin: 'com.android.library'
    

    再次尝试获取该项目并且不要更改 gradle 构建文件。还要确保您使用 gradle 包装器导入,而不是使用本地分发的 gradle。

    我希望这会有所帮助!

    【讨论】:

    • 哦,我明白了,我已将插件 ID 更改为 android-library,因为我看过一篇文章,如果您使用 intellij 使用 android-library。我将尝试使用包装器再次打开项目,我使用了本地 gradle,也许这就是问题所在。非常感谢@Bradley Campbell,我会尽快更新你
    • 你的权利@Bradley,我只是按照你的建议做了,它成功地导入了 intellij。很抱歉问这个问题,但我对 gradle 真的很陌生,我想知道为什么当我使用 gradle 时我的 intellij 中没有 android 工具?
    • 我可以从“工具 -> Android”访问 Intellij 中的 Android 工具。这些是您所说的工具吗?
    • 是的,这就是我所指的“工具->Android”。而且,我什至无法查看我的 xml 的设计 UI。我在 Intellij 中搜索过这个问题,他们说想法 13+ 不能支持 graddle 视图(类似的东西)。但是,我尝试从头开始创建一个 gradle - 使用 'File->New Project->Gradle:Android Module' 并且它做得很好。当我手动导入 gradle 项目时,我似乎无法弄清楚其中的区别。希望你能帮助我@Bradley Campbell。
    • 我不确定对不起!我的布局编辑器在 intellij 中运行良好。您总是可以尝试使用 Android Studio,它在 android 支持方面遥遥领先
    猜你喜欢
    • 2017-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-18
    • 1970-01-01
    • 2014-12-05
    相关资源
    最近更新 更多