IntelliJ IDEA'da harici kitaplık nasıl eklenir?


94

Projeme harici kitaplık eklemeye çalışıyorum (bunu / libs dizinine yerleştiriyor). O kütüphaneden metotları kullanmaya çalıştığımda kırmızı renkte olduklarını görüyorum ki bu kütüphanenin tanınmadığı anlamına geliyor. Ctrl + B'ye tıkladığımda, "Gidecek bildirim bulunamıyor" mesajı alıyorum.

Bir kitaplık (JAR dosyası) eklemek için şu adımları kullanıyorum: 1. kitaplık dosyasını / libs dizinine kopyalayın 2. Proje Yapısını açın -> Global Kitaplıklar -> Sınıfları ekleyin 3. kitaplığı bulun ve Tamam'a tıklayın

Bunu yapmanın doğru yolu bu mu?

PS. AdMob .jar dosyasını bu şekilde eklemeye çalışıyorum.

Yanıtlar:


156

En son sürümlerde daha kolay prosedür:

  • Jar'ı uygulamadaki libs dizinine kopyalayın (orada değilse dizini oluşturabilirsiniz)
  • Kütüphanelerin yapıda görünmesi için projeyi yenileyin (proje üst seviyesine sağ tıklayın, yenileyin / senkronize edin)
  • Kitaplıkları genişletin ve kavanozun üzerine sağ tıklayın
  • "Kitaplık Olarak Ekle" yi seçin

Bitti


1
Çocuklar bu sadece IDEA 13'ten beri var. IDEA 9 olduğunda sorduğum soruyu sordum.
sandalone

2
@sandalone Bu noktada önemli değil. Bugün buraya inen insanlar büyük olasılıkla şimdiye kadar bu basit yöntemi destekleyen bir IDE kullanıyor
Almanca

4
"Jar'ı uygulamadaki kitaplık dizinine kopyala" - Ancak "uygulamada" kitaplıklar dizini yoktu. Uygulama dizinimde yalnızca out ve src dizinleri vardı. Ben de "libs" adında yeni bir dizin oluşturdum ve kavanozu içine koydum. Ama amacın bu mu bilmiyorum ... Sonra "Projeyi yenile böylece kütüphaneler yapıda görünecek". "Yenilemek" için bir komut bulamadım. Bir proje nasıl yenilenir? Yeni başlayanlar zor zamanlar geçiriyor. :-(
Rafael_Espericueta


1
"Kitaplıkları genişletin ve kavanozun üzerine sağ tıklayın" Doğru değil. Eğer doğru 'lib' klasörü tıklayın ve seçmelidir size klasör 'lib' daki kavanoz kopyaladığınız zaman '... Kütüphane olarak ekle'
Gerard Verbeek

64

Bu işlemi, IDEA'daki bir Android projesine 3. taraf Jar eklemek için kullandım.

  • Jar'ı kütüphanelerinize / dizininize kopyalayın
  • Proje Ayarlarını Aç (Ctrl Alt Shift S)
  • Soldaki Proje Ayarları panelinin altında Modüller'i seçin
  • Sağdaki bölmede Bağımlılıklar sekmesini seçin
  • Ekranın en sağındaki Ekle ... düğmesine basın (benim gibi daha küçük bir ekranınız varsa, görmek için yeniden boyutlandırmayı sağa sürüklemeniz gerekebilir)
  • Ekle seçeneklerinin açılır listesinden "Kitaplık" ı seçin. "Kitaplıkları Seçin" iletişim kutusu görünecektir.
  • "Yeni Kitaplık ..." a basın
  • Kitaplık için uygun bir başlık seçin
  • "Sınıf Ekle ..." seçeneğine basın
  • Kitaplığınızdan / dizininizden Jar'ı seçin ve kapatmak için Tamam'a basın

Kütüphane şimdi tanınmalıdır.


AdMob kitaplığı eklemeyi denediniz mi? Bu adımlardan sonra Manifest dosyasında hala com.google.ads.AdActivity paketim var.
sandalone

Manifest'teki paket adının hala kırmızı olduğunu (sistem bunu görmüyor) ve Ctrl + B'nin hala çalışmadığını yazmayı unuttum.
sandalone

1
@bergnam, sorununuz gizlenmiş sınıflar için ayrıştırma hatasından kaynaklanıyor olabilir, bkz. youtrack.jetbrains.net/issue/IDEA-71456 .
CrazyCoder

Hm, olabilir. Buradaki tek fark, bu kütüphanenin çalışması, ancak Manifest otomatik tamamlama tarafından tanınmamasıdır. Kırmızı renklendiriyor ve Ctrl + Space ile paket ekleyemiyorum, ancak manuel olarak yazmam gerekiyor.
sandalone

Bu adımları izledikten sonra, kütüphanenin erişilebilir olması için temiz bir mvn paketi çalıştırmam gerekiyordu.
Jenn

9

Intellij IDEA 15: Dosya-> Proje Yapısı ...-> Proje Ayarları-> Kitaplıklar


1
Basit bir projeye maven / gradle / ant build karmaşıklığı eklemek istemiyorsanız en kolay çözüm
Pierre

Kabul. Ayrıca, neden her projede aynı JAR dosyasının birden fazla kopyasını alasınız?
Richard Elkins

2

Uzun vadede daha iyi bir yol, Gradle'ı proje ortamınıza entegre etmektir. Java için bir yapı aracıdır ve şimdi android geliştirme alanında çok kullanılıyor.

Bir .gradle dosyası oluşturmanız ve kitaplık bağımlılıklarınızı listelemeniz gerekecektir. Ardından, yapmanız gereken tek şey projeyi Gradle kullanarak IntelliJ'e aktarmaktır.

Şerefe


1

Bu soru, gerekli jar dosyası global kütüphanede bulunuyorsa genişletilebilir, mevcut projenize nasıl yapılandırabilirsiniz.

Bunun gibi işlemler: "proje yapısı" -> "modüller" -> "sağdaki mevcut proje bölmenize tıklayın" -> "bağımlılıklar" -> "küçük ekle (+) düğmesine tıklayın" -> "kitaplık" -> "istediğiniz kitaplığı seçin".

maven kullanıyorsanız ve pom.xml'nizde de bağımlılığı yapılandırabilirsiniz, ancak seçtiğiniz sürüm genel kitaplık gibi değilse, aynı jar dosyasının başka bir sürümünü depolamak için belleği boşa harcarsınız. bu yüzden ilk adımı kullanmanızı öneririm.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.