Konu Javadoc olduğunda JDK8'in çok daha katı (varsayılan olarak) olduğunu çabucak anlayacaksınız. ( bağlantı - son madde işaretine bakın)
Asla herhangi bir Javadoc oluşturmazsanız, o zaman elbette herhangi bir sorun yaşamazsınız, ancak Maven sürüm süreci gibi şeyler ve muhtemelen CI yapılarınız, JDK7 ile gayet iyi çalıştıklarında aniden başarısız olur. Javadoc aracının çıkış değerini kontrol eden her şey artık başarısız olacaktır. JDK8 Javadoc, muhtemelen warnings
JDK7'ye kıyasla daha ayrıntılıdır, ancak buradaki kapsam bu değildir. Biz bahsediyoruz errors
!
Bu soru, bu konuda ne yapılacağına dair öneriler toplamak için var. En iyi yaklaşım nedir? Bu hatalar kaynak kod dosyalarında bir kez ve tümü için düzeltilmeli mi? Büyük bir kod tabanınız varsa, bu çok fazla iş olabilir. Başka hangi seçenekler var?
Ayrıca, daha önce geçecek olan şimdi başarısız olanların hikayelerini de paylaşabilirsiniz.
Şimdi başarısız olanların korku hikayeleri
wsimport araçları
wsimport
aracı, web hizmeti tüketicileri oluşturmak için bir kod üretecidir. JDK'ya dahildir. Eğer kullansanız bile wsimport
JDK8 gelen aracı yine de kaynak kodu üretecektir JDK8 gelen javadoc derleyici ile derlenmiş edilemez .
@author etiketi
3-4 yıllık kaynak kod dosyalarını açıyorum ve şunu görüyorum:
/**
* My very best class
* @author John <john.doe@mine.com>
*/
Bu artık <karakteri nedeniyle başarısız oluyor. Açıkça söylemek gerekirse, bu haklı, ancak çok bağışlayıcı değil.
HTML tabloları
Javadoc'unuzdaki HTML Tabloları? Bu geçerli HTML'yi düşünün:
/**
*
* <table>
* <tr>
* <td>Col1</td><td>Col2</td><td>Col3</td>
* </tr>
* </table>
*/
Bu artık hata mesajı ile başarısız olur no summary or caption for table
. Hızlı bir çözüm şu şekilde yapmaktır:
/**
*
* <table summary="">
* <tr>
* <td>Col1</td><td>Col2</td><td>Col3</td>
* </tr>
* </table>
*/
ama neden bu Javadoc aracından gelen dünyayı durdurma hatası olmak zorunda?
Artık daha bariz nedenlerle başarısız olan şeyler
- Geçersiz bağlantılar, ör.
{@link notexist}
- Yanlış biçimlendirilmiş HTML, ör.
always returns <code>true<code> if ...
GÜNCELLEME
Bağlantılar:
Stephen Colebourne tarafından konuyla ilgili mükemmel bir blog .
-Xdoclint
ile bile kullanabilirsiniz javac
…