2015-09-27 7 views
8

Wenn ich javadoc für ein Verfahren die Verfahrensparameter/Ausnahmen unnötig in eine neue Zeile umgebrochen erhalten, wie diese erzeugen:generiert javadoc Seiten unneccesarily Wrap Methodenargumente mit Anmerkungen

enter image description here

Es gibt viele horizontalen Raum ist links auf der Seite. Verwenden von Oracle javadoc.exe 8u60.

Wie kann ich diese unnötigen Zeilenumbrüche verhindern, ohne die HTML-Dateien manuell bearbeiten zu müssen?

Dies ist der Quellcode des Teils im Screenshot gezeigt:

<ul class="blockList"> 
    <li class="blockList"> 
     <a name="method.detail"> 
      <!-- --> 
     </a> 
     <h3>Method Detail</h3> 
     <a name="getRootWord--"> 
      <!-- --> 
     </a> 
     <ul class="blockList"> 
      <li class="blockList"> 
       <h4>getRootWord</h4> 
       <pre>@NotNull 
public&nbsp;<a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;getRootWord()</pre> 
      </li> 
     </ul> 
     <a name="setRootWord-java.lang.String-"> 
      <!-- --> 
     </a> 
     <ul class="blockList"> 
      <li class="blockList"> 
       <h4>setRootWord</h4> 
       <pre>public&nbsp;void&nbsp;setRootWord(@NotNull 
         <a href="http://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;rootWord)</pre> 
      </li> 
     </ul> 
     <a name="getAdjectiveDeclension--"> 
      <!-- --> 
     </a> 
     <ul class="blockList"> 
      <li class="blockList"> 
       <h4>getAdjectiveDeclension</h4> 
       <pre>@NotNull 
public&nbsp;<a href="../../../../com/kayon/core/adjective/AdjectiveDeclension.html" title="interface in com.kayon.core.adjective">AdjectiveDeclension</a>&nbsp;getAdjectiveDeclension() 
                throws <a href="../../../../com/kayon/core/NoDeclensionException.html" title="class in com.kayon.core">NoDeclensionException</a></pre> 
       <dl> 
        <dt><span class="throwsLabel">Throws:</span></dt> 
        <dd><code><a href="../../../../com/kayon/core/NoDeclensionException.html" title="class in com.kayon.core">NoDeclensionException</a></code></dd> 
       </dl> 
      </li> 
     </ul> 
     <a name="setAdjectiveDeclension-com.kayon.core.adjective.AdjectiveDeclension-"> 
      <!-- --> 
     </a> 
     <ul class="blockList"> 
      <li class="blockList"> 
       <h4>setAdjectiveDeclension</h4> 
       <pre>public&nbsp;void&nbsp;setAdjectiveDeclension(@Nullable 
            <a href="../../../../com/kayon/core/adjective/AdjectiveDeclension.html" title="interface in com.kayon.core.adjective">AdjectiveDeclension</a>&nbsp;adjectiveDeclension)</pre> 
      </li> 
     </ul> 
    </li> 
</ul> 

Der Quellcode oben herausgezogen wird, kondensiert und durch einen HTML-Formatierer für das Lesen zu vereinfachen verarbeitet, here is the very raw complete file.

+0

So haben Sie bereits eine HTML-Formatierer, aber Sie wissen nicht, wie es zu benutzen? – EJP

+0

Ich habe einen Online-Schnell-HTML-Formatierer verwendet, um das Lesen zu vereinfachen. Das Original und der Inline-Code sind im Prinzip gleich. Nichts mehr als das. – RAnders00

+0

Sind Sie bereit, Doclets zu verwenden, um dieses Problem zu umgehen? Es ist machbar, aber eine Menge Aufwand für eine vergleichsweise kleine Veränderung. – approxiblue

Antwort

8

Sie können das Format Ihres Javadoc anpassen, indem Sie ein benutzerdefiniertes Doclet schreiben.

Bitte lesen Sie in diesen Abschnitt in der javadoc Generator Dokumentation:

Javadoc Doclets

Sie können den Inhalt und das Format der javadoc Befehlsausgabe mit Doclets anpassen. Der Befehl javadoc verfügt über ein standardmäßiges integriertes Doclet, das so genannte Standard-Doclet, das eine HTML-formatierte API-Dokumentation generiert. Sie können eine Unterklasse des Standard-Doclets ändern oder erstellen oder ein eigenes Doclet schreiben, um HTML, XML, MIF, RTF oder ein anderes gewünschtes Ausgabeformat zu generieren.

Wenn ein benutzerdefiniertes Doclet nicht mit der Option -doclet angegeben ist, verwendet der Befehl javadoc das standardmäßige Standarddoclet. Der Befehl javadoc verfügt über mehrere Optionen, die unabhängig davon verfügbar sind, welches Doclet verwendet wird. Das Standarddoclet fügt zusätzliche Befehlszeilenoptionen hinzu. Siehe Optionen.

http://docs.oracle.com/javase/8/docs/technotes/tools/windows/javadoc.html

+3

Die Implementierung des gesamten Doclet, um nur einige Zeilenumbrüche zu entfernen, ist eine schwierige Lösung ... – Holger