2014-05-22 18 views
8

Netbeans 8.0 kullanarak Javadoc yorumuna bir {@ code} ek açıklama eklemek istiyorum ve düzgün çalışmıyor.Netbeans 8.0 ile bir javadoc yorum içinde bir {@ code} bloğundaki "@" sembolünden kaçmaya çalışmak

Daha önce bu diğer sorular gördüm (yani How can you escape the @ character in javadoc?) ama html @ ve {@literal @} ikisi de işe görünmüyor kaçış.

/** 
* blah blah blah 
* <p> 
* For example: 
* <pre> 
* {@code 
* {@literal @}begin_specification 
* ... 
* &#64;end_specification 
* } 
* </pre> 
*/ 

Ben Run -> Generate Javadoc vurabilir ve her şeyi hatasız iyi çalışır ama çıkan çıktıda baktığım zaman görüyorum:

Yorumum (hem örneğin uğruna yöntemler kullanılarak) şöyle Bir tarayıcı:

{@literal @}begin_specification 
... 
&#64;end_specification 

İstenilen sonuç bu değil ... Herhangi bir öneri/fikir?

Java için oldukça yeniyim ama geçmişte C/C++ 'da Doxygen gibi şeyler kullandım. Burada yanlış bir şey mi yapıyorum? Java 1.8.0_05 x64 ile NetBeans 8.0 (Build 201403101706) kullanıyorum.

<pre> <code> 
    {@literal @} 
</code> </pre> 

yerine {@code ...} bloğun:

+0

'@ code ''' code' bloğunda '@ literal ''' '' 'içinde' '' işleminin yapılmadığı anlamına geldiğinden, '@ literal'ı koymak anlamsızdır. Tarayıcınızda gördüğünüz şey: tam olarak, {@code…} etiketinizin içeriği herhangi bir işleme tabi tutulmadan. Öyleyse neden başka bir @ literal'a ihtiyacınız olduğunu düşünüyorsun? – Holger

+0

@Holger Bence böyle bir durum olduğunu düşünmüyorum ("içeride işlenmemiş"). – assylias

+0

@assylias: Söylemeye çalıştığınız şeyi anlamıyorum. '{@code…}' içinde *, '' 'nin * işlemesi yoktur. Bu, {@code…} 'ın amacıdır. Bu nedenle, kodu, ör. ek açıklamalar. * Ama satır sonları zarar verebilir * içinde * inline * -tags… [Belgeler:] (http://docs.oracle.com/javase/7/docs/technotes/tools/windows/javadoc.html#code) “Görüntüler metni HTML işaretlemesi veya * iç içe javadoc etiketleri * olarak yorumlamadan kod yazı tipindeki metin. ” – Holger

cevap

0

Sadece bu konuya NetBeans 8.0.1 ile girdim, bu yüzden yaklaşık 15 dakika boyunca bununla uğraştım. İlk başta javadoc'taki {@code } biçimlendiricisiyle, parens'teki hiçbir şey görünmüyordu, bu yüzden javadoc'taki metinde gerçek aralar vardı. Daha sonra onunla uğraştıktan sonra (<pre> ve diğer birkaç etiketi kullanarak) ve {@link }'u içeren diğer sınıfları açtıktan sonra neyin işe yaramadığını.

Neler olup bittiğinden emin değilsiniz, ancak IDE'nin javadoc renderer'ının tamamen "ısınması" için biraz zamana ihtiyacı vardı. Bu gibi olmayan teknikler gibi, gerçekten bu şekilde ortaya çıktı. Bir javadoc başlığı, bir {@code } blokunu doğru gösterdi, ancak başka bir kelime değil, sadece birkaç kelimeyle. Şimdi her şey doğru şekilde gösteriliyor. Bunun kimseye yardım edeceğinden emin değilim, fakat NetBeans'e yeni bir bugzilla bileti göndereceğimi düşündüğümde, yedekleyip çalışıyorum. Kendi biletime dön ...

1

Bu bilinen bir hatadır. İlgili hatadan link: bir düzeltme için tarifeli sürümü var

https://bugs.openjdk.java.net/browse/JDK-8130754

2016-10-07 itibarıyla.

+0

Bu bağlantı soruyu yanıtlayabilirken, cevabın temel kısımlarını buraya dahil etmek ve referans için bağlantı sağlamak daha iyidir. Bağlantılı sayfa değiştiğinde yalnızca bağlantı yanıtları geçersiz olabilir. - [Yorum Yaz] (/ review/düşük kaliteli yazılar/11046968) – bozzmob

+0

Senin cezbettiğin cevap ve bürokratik ruhaniyet beni üzüyor. İnsanlara yardım ettiğin şey bu. –

+0

Bu benim templated cevabı değil;) İncelediğimde Stackoverflow'un bir yorum olarak gönderdiği de bu. Cevabınız kimden '-1' emin değil. Ancak, lütfen biraz metin ekleyin, yardımcı olacaktır. Bunu biliyorsun! :) – bozzmob

0

Bu hatadan kurtulmanın bir yolu, standart "@" sembolüne benzeyen farklı bir karakter kullanmaktır.Benzer bir bir kaç Unicode karakterleri Bulunan: @

  1. (u + 0040): TİCARET AT (kırık normal bir)
  2. ⓐ (U 24D0) daire içine alınmış Latin küçük harf bir
  3. bir {@code içinde javadoc yorumunda bunlarla "@Override" geç çalıştı

AT Fullwidth TİCARET: (U FF20) '

  • küçük TİCARİ: (U FE6B)'
  • ...} etiket. (Bir Netbeans editörü ve bir Mozilla Firefox tarayıcısı kullanıyorum.) Sembollerin tümü, elbette # 1 hariç. Ayrıca, # 3 editörde görünmedi, ancak tarayıcıda iyi çalıştı.

  • İlgili konular