Javadoc de l'affichage de la valeur sur l'intérieure de la constante de classe à l'aide de @valeur
J'ai un intérieur de classe qui déclare une constante et que vous voulez afficher sa valeur dans la Javadoc de l'encadrement de premier niveau de classe à l'aide de @valeur de l'annotation. Par exemple:
/**
* {@value #FOO_CONS} //this displays well
* {@value #BAR_CONS} //this does not work (checked in the latest Eclipse)
* {@value Bar#BAR_CONS} //this does not work, either
*/
public Foo {
public static final int FOO_CONS = 1;
static class Bar {
public static final int BAR_CONS = 42;
}
}
Toutes les idées comment afficher la valeur de BAR_CONS dans la Javadoc de la Foo
de classe (ou de toute autre classe, en général)?
- Avez-vous essayez d'utiliser
@value Foo.Bar#BAR_CONS
comme indiqué [ici][1], il prend la même forme que le @voir argument, et, comme indiqué [ici][2]Nested classes must be specified as outer.inner, not simply inner, for all forms.
je n'ai pas eclipse ici, donc je ne suis pas en mesure de tester davantage. Sinon, le chemin d'accès complet devrait fonctionnercom.pkg.Foo.Bar#BAR_CONS
[1]: docs.oracle.com/javase/1.5.0/docs/tooldocs/windows/... [2]: docs.oracle.com/javase/1.5.0/docs/tooldocs/windows/... - Oui, cela ne fonctionne pas, au moins elle n'est pas affichée correctement dans Eclipse. De plus je ne peux même pas obtenir FOO_CONS afficher correctement avec {@valeur Foo#FOO_CONS}.
- Quelle est la version de eclipse utilisez-vous ? Je me souviens de la
@value
annotation n'affichant pas correctement avant d'Hélios. - Indigo (3.7.2). L'exemple ci-dessus fonctionnent bien dans votre Eclipse (si vous utilisez @valeur comme vous l'avez décrit)?
- Mon Indigo donne les mêmes résultats que l'OP a déclaré dans ses observations.
- Après d'autres tests, il ne fonctionne pas dans Juno soit. Si vous utilisez
Bar#BAR_CONS
lorsque vous déplacez le curseur dans la javadoc, eclipse correctement, mettez en surbrillance l'instance dans l'intérieur de la classe, la java doc eclipse point de vue n'est pas correctement le montrer. Je ne sais pas pourquoi. - a coup sur quelque chose d'utile. J'ai testé le chemin d'accès complet et eu du succès. Foo était dans le package "org.oyrm.javadoc" et l'annotation lit
{@value org.oyrm.javadoc.Foo.Bar#BAR_CONS}
Vous devez vous connecter pour publier un commentaire.
Format Javadoc pour la constante définie dans un autre package doit être:
{@forfait d'une valeur de.classe#field}
Cependant, il peut ne pas le rendu est un problème connu:
https://bugs.eclipse.org/bugs/show_bug.cgi?id=342194
si créer javadoc pour les membres de la visibilité "package" (qui est la visibilité de votre Barre de classe), je reçois la constante dans la javadoc en vertu de Foo.Bar