2013-11-22 33 views
5

在Android Studio中,我有一个Android项目,其中包含一个名为go的模块,它将Gradle设置为Android库。它包含一个名为com.nwoods.go的Java包。对于这个堆栈溢出提交的缘故,它含有一种叫FooBar

内部同样采用Android项目类,我有一个名为ugurdemo1应用模块具有MainActivity类别中包com.nwoods.ugurdemo1在Android Studio中编译另一个模块的源代码

Android Studio我已经修改了模块ugurdemo1的项目结构,以在编译时依赖库go。在ugurdemo1的MainActivity中,我想引用和使用go中的FooBar类。要做到这一点,我开头的类与典型的Java import语句:

 
    import com.nwoods.go.FooBar; 
    ... 
    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     FooBar myFooBarObject = null; 

Android Studio中仍不能做一个干净的重建我的消息来源后,解决符号FooBar。通过编辑依赖对话框中的编译时间设置来解决Stack Overflow的类似问题,但再次不起作用。如果它有任何帮助,我目前正在运行Android Studio IO Preview (0.3.6)

+1

面临同样的问题,但我的项目通过Gradle构建得很好,所以这是一个在0.8.4中仍然没有解决的AS问题。 – jonalmeida

回答

2

的问题可能不是你的项目但是这在这里被跟踪Android Studio中本身就是一个错误:https://code.google.com/p/android/issues/detail?id=65915

“修复”是从不同的项目根目录的所有模块中删除settings.gradle。

例如,在我的情况,我的项目结构是这样的:

build.gradle 
settings.gradle 
library_module: 
    build.gradle 
    settings.gradle 
     library: 
     build.gradle 
     settings.gradle 
android_app: 
    settings.gradle 
    build.gradle 

删除后,该结构是这样的:

build.gradle 
settings.gradle 
library_module: 
    build.gradle 
     library: 
     build.gradle 
android_app: 
    build.gradle 

干杯

+1

谢谢你的评论。由于我们没有时间等待/处理越野车开发工具,因此我们在当时结束了更换工具。但对于它的价值,它似乎已于2015年3月修补https://code.google.com/p/android/issues/detail?id=65915#c29 –

8

这听起来像你做了正确的事情,但要确认,这里是Project Structure依赖关系面板的屏幕截图,它允许您在Gradle中设置模块依赖关系:

Screenshot of Android Studio Project Structure dialog

该模块已经经由Maven风格的进口检索两个库的依赖,同时也为富模块的依赖关系。要添加新的依赖关系,请单击底部的+按钮并选择一个依赖关系类型(如图所示)。

你也可以手动编辑你的Gradle构建文件。在我的例子中,“two”模块的目录中有一个build.gradle文件。它有一个dependencies块,看起来像这样:

dependencies { 
    compile 'com.android.support:support-v4:+' 
    compile 'com.android.support:appcompat-v7:+' 
    compile project(':Foo') 
} 

您可以添加更多compile project线添加新的模块依赖关系;使用冒号分隔的语法来提供模块相对于项目根目录的位置。

如果您手动编辑build.gradle文件,请在完成使工具栏重新读取文件并选取所做更改后,单击工具栏上的“同步项目与Gradle文件”按钮。

相关问题