2016-04-06 37 views
5

UPDATE1: Non si tratta solo di nomi di parametri, eclipse non visualizza affatto alcuna informazione javadoc. Quando si passa il mouse su una classe, non viene visualizzato nulla.Libreria javadocs generata da maven-javadoc-plugin non funziona quando collegato su Eclipse

UPDATE2: La mia versione di eclissi è la 4.2.0.

Sto usando Eclipse e vorrei collegare javadoc di una biblioteca per il mio progetto in modo che quando ho implementare un'interfaccia e scegliere l'opzione Aggiungere metodi non implementati i nomi dei parametri metodi visualizzati correttamente invece di arg0, arg1, ecc

il problema è:

  • Quando ho generare il javadocs attraverso eclisse (Projec t> Genera Javadocs ...) e collegalo al mio progetto funziona, in altre parole, vedo i nomi dei parametri dei metodi corretti.

  • Quando ho generare il javadocs attraverso Maven-javadoc-plugin e collegarlo al mio progetto non funziona, in altre parole, vedo arg0, arg1, ecc

Forse non sto configurando correttamente il mio plugin per maven-javadoc? Qui di seguito la configurazione del mio pom.xml:

<plugin> 
    <artifactId>maven-javadoc-plugin</artifactId> 
    <version>2.8</version> 
    <executions> 
     <execution> 
     <id>attach-javadocs</id> 
     <goals> 
      <goal>jar</goal> 
     </goals> 
     </execution> 
    </executions> 
    </plugin> 

Qualsiasi aiuto sarà apprezzato. Non vedere i nomi dei parametri è molto brutto.

+0

hai provato cracking aprire i file jAR e confrontando i file? Come erano diversi? Per inciso, credo che la maggior parte degli IDE, incluso Eclipse, si baserà principalmente sul bar * source * per questo tipo di intelligence. –

+0

Questa è una buona idea. Farò un diff e vedrò cosa riesco a trovare. Ma non distribuirò le fonti, solo le javadoc. I javadoc generati da Eclipse funzionano bene, quindi sicuramente Maven sta facendo qualcosa di diverso. –

risposta

2

Che ha a che fare con this eclipse bug risolto solo nella versione 4.3. Fondamentalmente eclissare interrompe l'elaborazione di un file HTML Javadoc sulla riga seguente:

<meta http-equiv="Content-Type" content="text/html" charset="UTF-8"> 

perché si aspetta il set di caratteri nell'attributo contenuti come di seguito:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 

Io non credo che ci sia un modo per dire il plugin Maven javadoc per cambiare questo meta tag, ma è possibile eseguire un compito ANT seguito da Maven per risolvere tutti i vostri file html:

<replace dir="target/apidocs"> 
    <include name="**/*.html"/> 
    <replacetoken><![CDATA[<meta http-equiv="Content-Type" content="text/html" charset="UTF-8">]]></replacetoken> 
    <replacevalue><![CDATA[<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">]]></replacevalue> 
</replace>