2010-04-20 12 views

risposta

22

codice Java opzione doc

/** 
* @custom.mytag hey ho... 
*/ 

java

-tag custom.mytag:a:"This is my Tag:" 

uscita

Questo è il mio Tag:

hey ho ...

+1

Qualsiasi motivo specifico per utilizzare 'custom.mytag'? Che cosa accadrà quando c'è un punto, possiamo leggere e separare quei nomi o qualcosa, o è solo per indicare chiaramente il nome. – prime

-1

Bene quello che ho fatto non è la soluzione migliore, ma è leggibile:

/** <p><b>Pre:</b></p> <Ul>True</Ul> 
    * <p><b>Post:</b></p> <Ul>The x is pushed onto the top of the stack, 
    *      and the rest of the stack remains unchanged.</Ul> 
    * 
    * @param x    Indicates the current node 
    */ 
    public void push(int x){ 
     ... 
    } 

Fino ad una risposta adeguata è trovato, spero che aiuta!

+3

nessuna buona soluzione. utilizzare l'opzione -tag java doc – appsthatmatter

13

tag personalizzati non dovrebbero essere create utilizzando HTML perché javadoc potrebbe cambiare la sua implementazione o come si presenta i dati, forse faranno iniziare a utilizzare Markdown in futuro , anche l'esportatore Javadoc non prenderà le informazioni mancanti e potresti avere "tag" vuoti.

Prima usare qualsiasi tag che si desidera:

/** 
* Comments and a {@link #methodLink} for this method. 
* 
* @tt.wrapper {@link OtherClass} 
* 
*/ 
public String extractName() { 
    // method contents 
} 

Si noti che il tag personalizzato ha il formato @[prefix].[tagName], questo è dovuto al fatto che doclet (o un altro plugin Eclipse) potrebbe rilasciare il proprio tag con lo stesso nome e il tuo tag sostituirà semplicemente il tag standard, quindi aggiungiamo un prefisso per renderlo meno probabile.

Commento da doclet.

Tag personalizzati che potrebbero ignorare i tag standard futuri: @wrapper Per evitare potenziali sostituzioni, utilizzare almeno un carattere punto (.) Nei nomi dei tag personalizzati.


Ora dovete dire l'esportatore Javadoc su questo tag personalizzato, @tt.wrapper. Passare a Project > Generate Javadoc.. in Eclipse (Indigo nel mio caso).

Dopo aver configurato le impostazioni per i primi due schermi di questa finestra di dialogo (con "Next" per cambiare schermi) si dovrebbe vedere questa schermata:

Third configuration screen for Eclipse Doclet Javadoc Export

Si dovrebbe notare che le "opzioni Javadoc extra. ."Casella di testo ha il valore è necessario aggiungere per l'esportatore Javadoc per creare l'equivalente HTML del tag

Nel nostro caso l'opzione è questo (se si desidera più tag, metterli in una nuova riga):.

-tag tt.wrapper:a:"API Wrapper:" 

Ora, quando si esporta la Javadoc (vi consiglio anche salvare uno script ANT in modo da non dover passare attraverso questa finestra di dialogo ogni volta) si avrà il tag personalizzato in grassetto con la descrizione, ei valori sotto

PS Devo ancora trovare un modo per aggiungere la possibilità di aggiungere il completamento automatico per la c tag ustom, ma sembra impossibile in Indigo, forse sarà nelle versioni future (non sono sicuro che Juno ce l'abbia).

+0

L'argomento relativo alla modifica di HTML non è valido. Controlla l'esempio di taglet ufficiale su Oracle [sito] (http://docs.oracle.com/javase/7/docs/technotes/guides/javadoc/taglet/overview.html) usano HTML senza precondizioni ... – Serhiy

+0

Qualsiasi specifica motivo per usare 'tt.wrapper'? Che cosa accadrà quando c'è un punto, possiamo leggere e separare quei nomi o qualcosa, o è solo per indicare chiaramente il nome. – prime

+0

Fondamentalmente, è uno spazio dei nomi, quindi non si scontrano con i tag incorporati. – knownasilya

0

Se si desidera più, fare qualcosa come javadoc -tag pre -tag post -tag invariant dove chiede gli argomenti della riga di comando. Non utilizzare la roba in codice HTML