Javadoc und JavaFX

JavaFX und die Programmierung

Moderator: wegus

Antworten
Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Javadoc und JavaFX

Beitrag von Mitch » 28.04.2010, 16:47

Hi, ich muss mal wieder (wahrscheinlich ne dumme) Frage stellen.
Habe nun bissel gegoogelt um rauszufinden wie genau ich eine JavaDoc schreibe.
Leider finde ich keine gescheite Anleitung oder eine Übersicht.
Hat da vielleicht jemand eine gute Seite?
MfG

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Javadoc und JavaFX

Beitrag von arittner » 28.04.2010, 17:30

Moin!

Wie mit Java: http://java.sun.com/j2se/javadoc/writingdoccomments/

JavaDoc wurde in viele Sprachen übernommen, auch in JavaFX.

Beste Grüße,
Josch.
JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 29.04.2010, 09:59

Super danke dir

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 05.05.2010, 12:29

Hi bin da doch auf ewinige Probleme gestosse. Ich habe eigentlich alles so gemacht wies auf der Seite beschrieben wird, jedoch bekomme ich über 100 Fehler und Warnungen.
Am häufigsten bekomme ich die meldung:

Code: Alles auswählen

WARNING: no profile specified for member : DA.CustomButton.size
Diese Meldung bekomme ich einmal für Variablen, funktionen und Datein.
In dem Beispiel ist DA das Package CustomButton die Datei bzw. Klasse und size die Variable.
Jedoch bekomme ich auch eine Meldung Die mir nur das Package und die Datei angibt

Code: Alles auswählen

warning: javax.xml.transform.TransformerException: WARNING: no profile for DA.Values
als letzte Meldung habe ich noch diese gefunden:

Code: Alles auswählen

Trying to resolve: sdk.xsl null
Resolved sdk.xsl:null to jar:file:/C:/Programme/NetBeans%206.8/javafx2/javafx-sdk/lib/shared/javafxdoc.jar!/com/sun/tools/xslhtml/resources/sdk.xsl
was habe ich falsch gemacht bzw. woran kann das liegen?
MfG

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 05.05.2010, 12:50

Nun habe ich sogar ein Projekt, zu dem ich vor ca 4 Monaten eine Javadoc erstellen lies geöffnet und nochmals versucht eine zu erstellen.
Auch bei diesem Projekt bekomme ich diese Fehler, kann mir da vielleicht wer weiterhelfen, ob sich da irgendwas verändert hat?!?
MfG

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 05.05.2010, 16:07

Die JavaDoc wird nun trotz der Fehler erstellt jedoch werden die Funktionsbeschreibungen nicht angezeigt.
Hier ein Komplettes beischpiel der Docs:

Code: Alles auswählen

/*
 * CustomButton.fx
 *
 * Created on 15.03.2010, 14:29:00
 */
package DA;

import javafx.scene.CustomNode;
import javafx.scene.Group;
import javafx.scene.Node;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.scene.text.Font;
import javafx.scene.text.Text;
import javafx.scene.paint.Paint;

/**
 * @author Thomas Mitschka - Contact: thomas.mitschka@googlemail.com
 * @date 15.03.2010
 * @version %G%
 * @brief Klasse um einen Text als Button zu erstellen.
 * extends CustomNode: CustomNode ist unter anderem eine Superklasse von
 * javafx.scene.control.Button und
 * wird verwendet um eigene, individuelle Nodes zu erstellen.
 * @return javafx.scene.Node
 */
public class CustomButton extends CustomNode {
    /**
    * Das Text Node
    */
    public var txt  ;
    /**
    * Die breite des Textes
    */
    public var textwidth: Integer;
    /**
    * Die X-Koordinaten dieses CustomNodes
    */
    public var x: Number;
    /**
    * Die Y-Koordinaten dieses CustomNodes
    */
    public var y: Number;
    /**
    * Die Farbe des Textes
    */
    public var color: Paint;
    /**
    * Der dargestellte Text
    */
    public var text: String;
    /**
    * Die Größ des Textes und des Rahmens
    */
    public var size: Number;


    /**
     * @brief Erstellt den Hintergrund
     * create() liefert das erstellte Node zurück, welches wiederum aus mehreren Nodes besteht.
     * override wird benutzt, da diese Klasse eine Unterklasse von CustomNode überschreibt,
     * in diesem Fall die Klasse javafx.scene.control.Button
     * @return javafx.scene.Node
     */
    public override function create(): Node {
        return Group {
                    translateX: x translateY: y;
                    content: [
                        //Rechteck für den Hintergrund des Textes
                        Rectangle {
                            fill: Color.WHITE
                            width: bind textwidth height: bind size
                            opacity: 1.0
                        }, getText()
                    ]
                }
    }

    /**
     * @brief Funktion die den Text für die CustomNode bereit stellt
     * @return javafx.scene.text.Text
     */
    function getText(): Text {
        txt = Text {
            content: bind text
            fill: bind color
            font: Font {
                size: size
            }
        }
        //Positionierung des Textes in der mitte des Buttons
        txt.y = (size - txt.boundsInLocal.height) / 2 + Values.mainMenue_TextSize;
        textwidth = txt.boundsInLocal.width.intValue();
        return txt;
    }

}
Die Variablen beschreibungen werden in der doc angezeigt die Klassenbeschreibung und die Funktionsbeschreibung jedoch nicht. Kann mir da jemand weiterhelfen?
MfG

Tiefflieger
Beiträge: 8
Registriert: 24.04.2010, 19:51

Re: Javadoc und JavaFX

Beitrag von Tiefflieger » 05.05.2010, 18:08

Soweit ich weiß, erscheinen im JavaDoc nur "public" Eigenschaften und Funktionen.
Falls in JavaFX Funktionen ohne Sichtbarkeitsmodifikator standardmäßig "private" sind, wäre das eine mögliche Erklärung für die fehlenden Funktionen im Doc.
Heute code ich, morgen debug ich, und übermorgen cast ich die Königin auf int

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 05.05.2010, 18:23

Stimmt, da habe ich auch schonmal von gelesen, da gabs aber glaub ich einen Consolenbefehl mit dem man auch die private Funktionen in die Doc aufnehmen konnte. Werd nochmal Googeln.
MfG und thx für die Antwort

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 05.05.2010, 18:29

Habs gefunden. Der Consolenaufruf sieht folgendermasen aus:

javafxdoc -private Dateiname.fx

Damit gehts

Stellt sich nun nurnoch die Frage warum Die Klassenbeschreibung nirgendwo auftaucht.

MfG

Tiefflieger
Beiträge: 8
Registriert: 24.04.2010, 19:51

Re: Javadoc und JavaFX

Beitrag von Tiefflieger » 05.05.2010, 18:36

Mitch hat geschrieben:Stellt sich nun nurnoch die Frage warum Die Klassenbeschreibung nirgendwo auftaucht.
Funktionierts, wenn Du einfach nur

Code: Alles auswählen

/**
 * Eine ganz tolle Klassenbeschreibung
 */
public class CustomButton extends CustomNode {
als Klassenbeschreibung nimmst?
Heute code ich, morgen debug ich, und übermorgen cast ich die Königin auf int

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 06.05.2010, 12:04

Leider nicht.
Hätte aber auch noch eine frage, gibt es bei der javafxdoc ein Befehl um das Profile einstellen zu können?
Habe ja die fehlermeldungen, dass ich keins eingestellt habe.
MfG

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 06.05.2010, 12:20

Lag doch an dem @brief, hab beim testen die ganze zeit von einer backupdatei die doc erzeugt :oops:

Mit @profile zeigt er mir zwar das Profile an aber die funktion zur Auswahl geht noch nicht und die Fehlermeldungen kommen auch weiterhin.
Hoffe das noch beheben zu können.
MfG

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Javadoc und JavaFX

Beitrag von arittner » 07.05.2010, 07:46

Moin!

Mit dem @brief konnte ich auch direkt nichts anfangen. Woher hast Du das? Das Doclet von JavaFX ist doch relativ ähnlich zu Java. Hier ein paar bekannte Tags:

@advanced
Adds “advanced” to the CSS class for the method documentation.

@defaultvalue
Documents the default value for a variable.

@example
Formats some example code, then attempts to show the results in the documentation for the class.

{@inheritDoc}
Copies method documentation from the nearest parent class in the inheritance tree.

{@link}
Inserts an inline link to a class method or variable. Uses the form package.class#member label.

@needsreview
Adds “This comment needs review.” to documentation for classes, methods, and variables.

@param
Documents the parameters for a method.

@profile
Notes the profile of the class: common, desktop, or mobile.

@return
Documents the return value for a method.

@see
Adds a “See Also” note, but can only take the form of package.class#member label. You can’t use URLs or plain text.

@throws
Documents exceptions for a method.

@treatasprivate
This lets you hide the documentation for classes or variables. Even if you set the -private flag on javafxdoc, classes or variables with this tag will not appear in the generated HTML. Note that a class still has a file generated for it, but it is just not linked into the index pages. Documentation for variables is not generated at all.

In JavaFX 1.2 werden folgende Tags nicht in HTML transformiert: @author, @deprecated, @since, @version


Dann fällt mir noch was auf: Dein Packagename ist in Großbuchstaben. Wie in Java gilt für JavaFX:
The prefix of a unique package name is always written in all-lowercase ASCII letters and should be one of the top-level domain names, currently com, edu, gov, mil, net, org, or one of the English two-letter codes identifying countries as specified in ISO Standard 3166, 1981.

Subsequent components of the package name vary according to an organization's own internal naming conventions. Such conventions might specify that certain directory name components be division, department, project, machine, or login names.

Examples:
com.sun.eng, com.apple.quicktime.v2, edu.cmu.cs.bovik.cheese
Bin mir aber nicht sicher, ob das javafxdoc durcheinander bringt, aber man muss ja mit allem rechnen.

Beste Grüße,
Josch.
JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

Mitch
Beiträge: 79
Registriert: 02.03.2010, 12:39

Re: Javadoc und JavaFX

Beitrag von Mitch » 07.05.2010, 11:13

Danke für die Übersicht.
Das @brief benutzt ein Kollege hier um mit eclipse direkt eine Anzeige zu eine Funktion zu haben, ohne in die doc rein zu schaun.
Der package Name scheint die doc nicht durcheinander zu bringen allerdings werde ich diesen noch Ändern.
MfG

Antworten