Javadoc veya kaynakları libs klasöründeki kavanozlara nasıl eklerim?


254

Eclipse için ADT r17 eklentisinin JAR bağımlılıklarını otomatik olarak ayarlayan yeni sürümü eklendi. / Libs klasöründeki tüm .jar dosyaları derleme yapılandırmasına şimdi eklenir. Maalesef Android Bağımlılıkları sınıfyolu kapsayıcısı değiştirilemez.

Değiştirilemez android bağımlılıkları sınıfyolu

Javadoc ve kaynakları otomatik olarak eklenen .jar'a (/ libs klasöründen) nasıl ekleyebilirim?


Sorunuzun cevaplandığını sanmıyorum. Mark'ın kabul edilen cevabı tam olarak çözüm OLMAMASI istediğinizi verir. Javadoc ve kaynakları otomatik kütüphaneler aracılığıyla nasıl ekleyebiliriz (manuel kavanozlarla değil)?
pjv

2
Bu hata kodu için bir sorun var . Google.com/p/android/issues/detail?id=27490#c21 . Yorum 21, ADT r20'de kaynak klasöre (veya arşive) göreceli veya mutlak yolu düzenlemenizi sağlayan standart bir java .properties dosyasıyla (foo.jar -> foo.jar.properties) bağlantı kaynakları / javadoc ekleyebileceğini söylüyor ve / veya javadoc'a göreceli veya mutlak yol.
Sergii Pechenizkyi

Yanıtlar:


401

Sorunuzu cevaplamanın en iyi yolu Xavier , plastiv , VinceFR ve Christopher'ın cevaplarını özetlemektir .

Adım adım rehber

Bağlamak amacıyla kaynaklarını ve javadoc otomatik Eclipse ile bağlanmış bir .jar kütüphaneye aşağıdakileri yapmanız gerekir:

  1. Kitaplık .jar dosyasını libs klasörüne ve ilişkili kaynak .jar ve doc .jar dosyalarını libs / src ve libs / docs gibi ayrı alt klasörlere yerleştirin . İsterseniz src ve docs dışında bir ad kullanabilirsiniz , ancak .jar dosyalarının doğrudan libs klasöründe olmaması önemlidir .
  2. Libs klasöründe, gerçek kitaplık .jar .propertiesdosyasının tam adıyla bir dosya oluşturun (örneğe bakın). .Jar kısmını sakladığınızdan emin olun .
  3. Kaynaklardaki göreli yolları ve .propertiesdosyadaki javadoc .jar dosyasını belirtin .
  4. Eclipse projesini kapatıp yeniden açın! İsteğe bağlı olarak, düğmesine basarak projeyi yenileyin F5.
  5. Kaynak kodda bağlı kütüphanenin bir nesnesini seçin.
  6. Belgeleri kontrol etmek için Eclipse'de Javadoc görünümünü açın (ekran görüntüsüne bakın).
  7. F3Seçili nesnenin kaynak kodu bildirimini (varsayılan kısayol:) açın .


Misal

Örnekte Gson kütüphanesi kullanılmıştır .

Libs klasörünün dizin yapısı:

libs
├── docs
   └── gson-2.2.2-javadoc.jar
├── gson-2.2.2.jar
├── gson-2.2.2.jar.properties
└── src
    └── gson-2.2.2-sources.jar

Gson-2.2.2.jar.properties içeriği

src=src/gson-2.2.2-sources.jar
doc=docs/gson-2.2.2-javadoc.jar


Ek bilgi

Elbette javadoc ve sources .jar dosyalarını diğer klasörlere taşıyabilir ve göreli yolları belirleyebilirsiniz. Bu size kalmış. Kaynak ve javadoc kavanozlarını doğrudan lib klasörüne yerleştirmek mümkündür ancak önerilmez , çünkü belgelerin ve kaynak kodunun uygulamanıza dahil edilmesine neden olur .


Eclipse JavaDoc panelinin ekran görüntüsü:

Eclipse'de JavaDoc görünümü

Android 4.2.2 ile Gson kullanan bir Eclipse projesinin ekran görüntüsü:

Eclipse test project ekran görüntüsü


Ambalajsız javadoklara referans verme

Paketlenmiş olarak .jardeğil , yorumlarda android geliştiricisinin istediği gibi dosya ve klasörler olarak sunulan javadoc'lara başvurmak istiyorsanız aşağıdakileri yapın:

  1. Kütüphane yerleştirin .jariçinde libs/klasörün
  2. Aşağıdaki içeriğe sahip bir yourlibraryname.jar.propertiesdosya oluşturun ( unutmayın.jar ):

     doc=docs
  3. Javadocs klasörlerini libs/klasöre ekleyin .

Aşağıdaki klasör yapısını bulmalısınız:

├── docs
   ├── allclasses-frame.html
   ├── allclasses-noframe.html
   ├── com
      └── google
          └── ads
              ├── Ad.html
                 ....
              └── package-tree.html
      ...
   └── stylesheet.css
├── GoogleAdMobAdsSdk-6.4.1.jar
└── GoogleAdMobAdsSdk-6.4.1.jar.properties

Eclipse projesini yukarıda belirtildiği gibi kapatıp yeniden açmayı unutmayın ! GoogleAdMobAds Android kütüphanesine referans veren çalışan bir örnek projenin ekran görüntüsü .

GoogleAdMobAds Android kütüphanesi Eclipse projesi


7
Ahhh, benim için gerekli olan Eclipse projesinin kapanışı ve yeniden açılmasıydı. (Bundan önce şanssız birkaç kez tazelenmiş ve temizlenmiştim.)
Steve Haley

4
Teşekkürler @JJD harika çalıştı. Eclipse'i çalışmaya başlamadan önce yeniden başlatmak zorunda kaldım.
javajavajavajavajava

26
Not: Eğer gerçekten gerektiğini aksi takdirde bu kavanozları APK'nızda bindirildiğini olacak, bir alt, örneğin "./libs/docs" içine Javadoc ve kaynak JARs koymak! Ayrıca, yinelenen HTML dosyaları bulduğunda APK'nın oluşturulması başarısız olacağından, birden çok kitaplık için Javadoc'u ekleyemezsiniz.
Christopher Orr

5
.Properties dosyasından uzak bir javadoc'a başvurmak mümkün mü? Bunun gibi: doc = community.versant.com/documentation/reference/db4o-8.0/java/api
Matthias

9
Görünüşe göre bu sadece kaynak kodunu değil Javadoc'u bağlayacaksanız işe yaramaz, 7adipli Javadoc kavanozunu Belgelerim'deki bir klasöre çıkarmak zorunda kaldım, sonra özellikler dosyası Javadoc dizinine sahip klasöre işaret ettim .html doğrudan bu şekilde doc = C: \\ Kullanıcılar \\ johny \\ workspacenewfb \\ robotium-solo-4.0-javadoc
mbwasi

25

Windows'ta, özellikler dosyasındaki doc ve src yollarına başvurmak için ters eğik çizgiden kaçmanız gerekir. Örneğin, android-support-v4.jar için özellikler dosya içeriği şuna benzer:

doc=C:\\Program Files (x86)\\Android\\android-sdk\\extras\\android\\support\\v4\\docs
src=C:\\Program Files (x86)\\Android\\android-sdk\\extras\\android\\support\\v4\\src

1
Cevabını wow sorunumu çözdü, bir tane koydum ama \\. çok teşekkür etmeliyiz
Arash

17

Http://code.google.com/p/android/issues/detail?id=27490#c21 adresinden bir yanıt geliyor.

Libs klasörünüzde şunlara sahip olmalısınız:

doc(folder)
    foo_doc(folder)
        index.html
        ...
        ...
foo.jar
foo.jar.properties

Ve senin içine foo.jar.properties, sadece koydoc=./doc/foo_doc

Belki projenizi yenilemeniz, temizlemeniz, kapatmanız ve yeniden açmanız gerekir.

Benim için çalışıyor!


Eğer zip dosyasında dokümanlar varsa, bu gitmek için bir yoldur, çok teşekkürler !! thumbs up
Akhil Jain

10

Yukarıdakilerin hepsini denedim ve hiçbiri benim için çalışmadı. Her zaman işe yarayacak bir yöntem buldum. Temelde, suçlu, "libs" klasörünü kullanarak bıraktım böylece ADT "libs" klasörünü tedavi yoludur. Bunun yerine bir "kütüphaneler" klasörü oluşturdum ve kullandım.

Aşağıdakileri yapabilirsiniz ve her zaman çalışacaktır - ADT, gelecekte "libs" klasörü ile olan ilişkisini nasıl değiştireceğini değiştirse bile:

  1. Bir "kütüphaneler" klasörü oluşturun.
  2. Her kütüphane için altında bir alt klasör oluşturun.
  3. Her kütüphane için tüm dosyaları uygun klasöre yerleştirin (java jar dosyası, kaynak jar dosyası, javadoc jar dosyası, vb.).
  4. Her proje için java jar dosyasını Add Jars..., "kütüphaneler" klasöründeki kütüphane alt klasöründen kavanoz eklemek için düğmesine tıklayarak Java Oluşturma Yolu'nun "Kütüphaneler" sekmesine ekleyin.
  5. Projeyi "Kütüphaneler" sekmesinde açıp istediğiniz öğeyi seçip Edit..."kütüphaneler" klasöründeki kütüphane alt klasöründen kaynak / javadoc'ları eklemek için düğmeyi tıklatarak her projeye kaynak / javadoc ekleyin.
  6. Java Derleme Yolu için "Sipariş ve Dışa Aktar" sekmesinde her proje için onay kutusunu işaretleyin.
  7. Tüm kütüphanelerin taşındığını doğruladıktan sonra "libs" klasörünü silin.

Yukarıdaki prosedürü izleyerek projenizde aşağıdaki gibi klasörler olacaktır:

resim açıklamasını buraya girin

Java Derleme Yolunuz şöyle görünecektir:

resim açıklamasını buraya girin

Sipariş ve İhracatta kütüphaneler işaretlenir:

resim açıklamasını buraya girin


5

Şimdilik Javadoc istediğiniz kütüphaneyi taşıyın lib. Bu kütüphaneyi Build PathJavadoc'a ekler ve ekler.

Android konularında bu yorumu kontrol edin .


(Benim yaptığım gibi) siparişi kontrol etmeyi ve kütüphaneyi dışa aktarmayı ayarlamayı unutmayın Build Path.
Carlos Sobrinho

4

ADT 22'de hem commons-io-2.4.jar hem de android-support-v4.jar için Javadoc'a erişemedim

Bu şekilde düzelttim:

  1. Önkoşul: her iki kütüphane de "Referanslı Kütüphaneler" altında listelenir.

  2. Commons-io-2.4.jar'a sağ tıklayın ve Özellikler'i seçin. Bu pencere görünür:

resim açıklamasını buraya girin

commons-io-2.4.jar, commons-io-2.4-javadoc.jar ile birlikte gelir, bu nedenle arşiv Dış dosya yolunda Javadoc'u belirledim.

Destek kütüphanesi için aynı şeyi yaptım: android-support-v4.jar'a sağ tıklayın ve Özellikler'i seçin. Bu ekran görünür:

resim açıklamasını buraya girin

Bu sefer kaynak dizinin yolunu belirledim.


Bu, bir kütüphaneye bir javadoc ve / veya src eklemek için en kolay ve en doğrudan yöntemdir. Teşekkürler! Ek bir not olarak, ne javadoc ne de src'nin atıfta bulunulan kitaplıkta olması gerekmez.
gümüş

3

SDK Tools ve ADT revizyon 17'ye yükseltme yaptığımda commons-io-2.0.1.jar kütüphanesi referansı kesildi.

Sorunu çözmek için Project -> Özellikler -> Java Derleme Yolu'nu kullandım ve Kitaplıklar sekmesini seçtim. Commons-io-2.0.1.jar ile ilgili tüm referansları sildim ve sonra commons-io-2.0.1.jar dosyasını projeye yeniden eklemek için Jar Ekle'yi kullandım. Sonra kütüphane referansını genişletmek için kütüphane adının yanındaki '>' okunu tıklıyorum ve Kaynak ekini ve Javadoc konumunu ayarlamak için düzenleme düğmelerini kullandım.

Üzgünüm, yeterli temsilcim olmadığından resim gönderemiyorum (lütfen ...).


Benim için çalışmadı. Projenizde jar dosyasını nerede saklıyorsunuz? Benim kütüphaneler klasöründe benim var.
Daniel Ryan

Sonunda birisi gerçekten işe yarayan bir talimat verdi! Çok teşekkür ederim. ".Properties" dosyası da dahil olmak üzere söz edilen yöntemlerin hiçbiri benim için iyi sonuç vermedi, ancak bu, kütüphaneyi iletişim ekranında harici bir JAR olarak ekleyerek işi yaptı.
AlxDroidDev

1

Hareketli bir hedef gibi görünüyor, ancak birçok yerden bit ve parça topladıktan sonra (bu, tüm gerekli ayrıntıları açıklayamayan ancak gerekli olmayan soruların cevapları dahil veya belki de sistem biraz değişti) çözüm, en azından şu andan itibaren (28 Ağustos 2013).

  • Javadoclarınız için projenizin içinde olmayan bir yerde bir klasör açın .
  • Senin Javadocs orada koyun , fermuarını açıp her biri kendi klasörüne.
  • Senin İçinde libklasöründe, bir ekleme xxx.jar.propertiesEğer bir javadoc ilişkilendirmek istediğiniz her lib için dosyayı.
  • Bu özellikler dosyasında, uygun javadoc'u açtığınız klasöre bakın (Windows'ta ters eğik çizgilerden kaçın):

doc=d:\\Android\\javadoc\\libGoogleAnalyticsServices

  • Eclipse projenizi kapatıp yeniden açın (yenileme yeterli değildir). Artık uygun sınıfların üzerine geldiğinizde araç ipuçlarını görmelisiniz.

Bu adımlardan herhangi birine uyulmaması (javadoc unzip edilmemesi, klasör yerine dosyaya başvurulması vb.)


1

Bu sorunun oldukça eski olduğunu biliyorum, ancak dün aynı sorunla karşı karşıya kaldığımda ve yukarıda verilen çözüm benim için çok sinir bozucu olduğunda, birinin projenin .classpath dosyasına kolayca bir kaynak yolu tanımı ekleyebildiğini öğrendim. Eclipse bunu adapte edecek ve kaynaklara göz atabileceksiniz.

sınıf yolu girişinden önce:

<classpathentry kind="lib" path="[PATH_TO_MY_JAR]"/>

Kaynağa giden yolu ekledikten sonra

<classpathentry kind="lib" path="[PATH_TO_MY_JAR]" sourcepath="[PATH_TO_MY_SOURCE_JAR]"/>

Bu yardımcı olur umarım


0

sadece ADT eklentisini güncelleyin. Bu benim için çalıştı !!

  1. Eclipse'i başlatın, ardından Yardım> Yeni Yazılım Yükle'yi seçin.
  2. Sağ üst köşedeki Ekle'yi tıklayın.
  3. Görüntülenen Depo Ekle iletişim kutusunda, Ad için "ADT Eklentisi" ni ve Konum için aşağıdaki URL'yi girin: https://dl-ssl.google.com/android/eclipse/ Not: Android Geliştirici Araçları güncelleme sitesi için güvenli bağlantı. Girdiğiniz güncelleme sitesi URL'sinin HTTPS ile başladığından emin olun.
  4. Tamam'ı tıklayın. Kullanılabilir Yazılımlar iletişim kutusunda, Geliştirici Araçları'nın yanındaki onay kutusunu seçin ve İleri'yi tıklayın.
  5. Bir sonraki pencerede, indirilecek araçların bir listesini göreceksiniz. Sonrakine tıkla.
  6. Lisans sözleşmelerini okuyun ve kabul edin, ardından Son'u tıklayın.
  7. Yazılımın gerçekliğinin veya geçerliliğinin sağlanamayacağını belirten bir güvenlik uyarısı alırsanız, Tamam'ı tıklatın.
  8. Yükleme tamamlandığında Eclipse'i yeniden başlatın

Umarım yardımcı olur!


0

Belirli bir kavanoz için, kodlama sırasında araç ipucunda Javadoc yardımını görmek istiyorsanız, aşağıdakileri yapın: Projenizi> Özellikler> Java Oluşturma Yolu> Kütüphaneler Sekmesi'ni sağ tıklayın. Genişletmek için kavanozunuzun yanındaki oku tıklayın.

Kaynak eki , gerçek kavanozun konumunu göstermelidir (muhtemelen java klasörünüzde).

Javadoc konumu : Burada iki seçeneğiniz var: URL ve arşiv. Bu kavanozdaki javadoclarınız ilk düzeyde bir index.html dosyası içeren bir klasör biçimindeyse, 'Javadoc URL'yi seçin ve o klasörü işaret edin. Javadoclarınız bir kavanozun içindeyse, 'Arşivdeki Javadoc'u seçin ve kavanozun üzerine gelin. Araç ipucunu Javadoc bilgileriyle güncellemek için çalışma alanınızı yeniden başlatmayı / kapatıp projenizi yeniden açmayı unutmayın.

Umarım bu çok basit bir görev olması gerektiğine inandığım şey için basit bir cevap verir.


0

Çözümüm:

"Java Source Attacher Feature" adlı bir eclipse eklentisini indirin.

Daha sonra bir kavanoz seçin ve bu eklentiyi kullanarak kaynak kodunu ekleyin. Seçmek için kavanoz dosyasına tıklayın, farenin sağ tuşuna basın ve "java kaynağını ekle" yi seçin.

Kaynak kodunuz olduğunda, otomatik olarak javadoc'a sahip olursunuz.

Artık ilişkili javadoc'u görüntülemek için F2'yi sınıfların üzerinde kullanabilirsiniz.

Zevk almak

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.