2013-11-22 22 views
5

Android Studio'da, Android kitaplığı için Gradle ile go kurulumu adlı bir modül içeren bir Android projem var. Bu, com.nwoods.go adında tek bir Java paketi içerir. Bu yığın taşması sunulması uğruna, ben paketin com.nwoods.ugurdemo1 bir MainActivity sınıfı vardır ugurdemo1 denilen bir uygulama modülü var, aynı Android projesi içinde FooBar

adlı bir sınıf içerir.Android Studio'da başka bir modülün kaynağıyla derleme

Android Studio go numaralı derleme için derleme zamanında modül ugurdemo1 modülünün proje yapısını değiştirdim. ugurdemo1 's MainActivity uygulamasında go numaralı telefondan FooBar numaralı sınıftan yararlanmak ve kullanmak isterim. Bunu yapmak için, ben tipik bir Java ithalat ifadesiyle sınıf etmekistemem:

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

Android Studio hala temiz Kaynaklarımdan yeniden yaptıktan sonra FooBar için sembol çözemezse. Yığın Taşması ile ilgili benzer sorular Bağımlılık iletişim kutusundaki derleme zamanı ayarları düzenlendikten sonra çözülmüştür ancak yine de çalışmaz. Herhangi bir yardım varsa, şu anda şu anda koşuyorum Android Studio IO Preview (0.3.6)

+1

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

Alkış ama Projem Gradle üzerinden gayet iyi çalışıyor, bu yüzden hala 0.8.4'te çözülmeyen bir AS sorunu var. – jonalmeida

cevap

2

sorun projenizin ama burada izlenen ediliyor Android Studio kendisi bir hata olmayabilir: https://code.google.com/p/android/issues/detail?id=65915

"düzeltme" kök proje dizininde dışındaki tüm modüllerden settings.gradle silmektir.Örneğin

, benim durumda, benim proje yapısı aşağıdaki gibidir:

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

sildikten sonra yapı şuna benziyordu: aynı sorun karşısında

+1

Bu yorum için teşekkür ederiz. Buggy geliştirme araçları ile uğraşmak/uğraşmak için zamanımız olmadığından beri değişen araçları bitirdik. Ancak, değere değer olduğu için, Mart 2015 itibariyle yamalandığı anlaşılıyor. Https://code.google.com/p/android/issues/detail?id=65915#c29 –

8

Doğru şeyi yaptığınızdan emin olabilirsiniz, ancak onaylamak için, burada Gradle:

modül bağımlılıklarını ayarlamanıza olanak veren bir Proje Yapısı bağımlılıkları panelinin ekran görüntüsüdür.

Screenshot of Android Studio Project Structure dialog

Bu modül zaten Maven tarzı ithalat yoluyla alınan iki kütüphaneler bağımlılıklara sahiptir ve aynı zamanda Foo modülünde bir bağımlılık olarak. Yeni bir bağımlılık eklemek için, alttaki + düğmesine tıklayın ve bir bağımlılık türü seçin (gösterilen).

Ayrıca, Gradle derleme dosyalarınızı elle düzenleyebilirsiniz. Örneğimde, "iki" modülün dizininde build.gradle dosya var. Şuna benzer bir dependencies blok vardır:

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

Yeni modül bağımlılıklar eklemek için başka compile project satırları ekleyebilirsiniz; Projenin kök dizinine göre modülün konumunu sağlamak için iki noktaya ayrılmış bir sözdizimi kullanın.

build.gradle dosyasını elle düzenlerseniz, Android Studio'yu yeniden okuyup değişikliklerinizi elinize almak için tamamlandığında, araç çubuğundaki "Gradle Files ile Projeyi Eşitle" düğmesini tıklayın.

İlgili konular