模块依赖

时间:2013-12-04 20:52:42

标签: android gradle android-studio

我正在尝试使用包含两个模块的项目,例如M1M2M1应该M2作为依赖项。我已将Test添加到M2,我想从M1访问。

我正在使用Android Studio 0.3.2。无论我尝试什么(重新导入项目,同步gradle文件......),我都无法从Test访问M1课程:Cannot resolve symbol 'Test'

文件夹结构:

- root
    - M1
        - src
        - build.gradle
        - ...
    - M2
        - src
        - build.gradle
        - ...
    - build.gradle
    - settings.gradle
    - ...

根/ settings.gradle:

include ':M1', ':M2'

root / build.gradle:

// Top-level build file where you can add configuration options common to all sub-projects/modules.

根/ M1 /的build.gradle:

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

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 19
        targetSdkVersion 19
    }
}

dependencies {
    compile project(':M2')
}

根/ M2 /的build.gradle:

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

repositories {
    mavenCentral()
}

android {
    compileSdkVersion 19
    buildToolsVersion "19.0.0"

    defaultConfig {
        minSdkVersion 19
        targetSdkVersion 19
    }
}

dependencies {
}

正在运行gradlew compileDebug

root\M1\src\main\java\com\mypackage\m1\MainActivity.java:28: error: package com.mypackage.m2 does not exist
    com.mypackage.m2.Test test;
                    ^

我该怎么做才能解决这个问题?

1 个答案:

答案 0 :(得分:1)

你的模块都用

应用android应用程序插件
apply plugin: 'android'

如果M1要依赖M2,则M2必须是库项目,其gradle文件应该说

apply plugin: 'android-library'