相关疑难解决方法(0)

IntelliJ,Android和Gradle

我试图让我现有的Android项目使用gradle和IntelliJ 12.以前我让它与maven一起工作但是它似乎没有像gradle那样灵活,而且我认为我知道的是我需要更少子文件夹.

我的Android项目分为干净的java库(:core)和实际的Application(:android).这两个项目都在我的主项目文件夹中.

~-+MainProject
  |--+core
  |  L--build.gradle
  |--+android
  |  L--build.gradle
  |--build.gradle
  L--settings.gradle 
Run Code Online (Sandbox Code Playgroud)

我认为让gradle工作的理想解决方案是将(:core)和(:android)项目视为嵌套项目,这意味着我可以简单地使用我的cmd在MainProject源文件夹中启动gradle任务.

但是我想出了不同的问题:

  1. Gradle依赖项仅包含在核心项目中
    • 这意味着在instrumentatetionTest和主项目文件中都没有正确设置为源/测试目录的任何目录
    • IntelliJ不解析我在gradle中添加的任何类作为依赖项(AndroidSDK,junit,mockito,来自:core项目的那些)
      • 试图使用插件'的想法',但要么我错了,要么没有解决问题
  2. 我为构建APK获得了重复依赖错误
    • 必须与junit有关:4.11和mockito-core:我添加了1.9.5
    • 我试过的:
      • 删除依赖项 - >构建失败导致某些类当然无法解决
      • 改为junit:4.5+在其他一些帖子中被提及 - >根本没有变化

这是*.gradle配置

MainProject: - settings.gradle

include ':core', ':android'
Run Code Online (Sandbox Code Playgroud)

- build.gradle

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.6.+'
    }
}

subprojects {
    repositories {
        mavenLocal()
        maven { url "http://repo.maven.apache.org/maven2" }
    }
}
Run Code Online (Sandbox Code Playgroud)

:core - build.gradle

apply plugin: 'java'

dependencies {
    testCompile 'junit:junit:4.11'
    testCompile 'org.mockito:mockito-core:1.9.5'
}
Run Code Online (Sandbox Code Playgroud)

:机器人

apply plugin: 'android'

repositories {
    mavenCentral() …
Run Code Online (Sandbox Code Playgroud)

intellij-idea android-gradle-plugin

5
推荐指数
1
解决办法
2482
查看次数