2009-10-05 8 views
81

Używając Javadoc 1.5, nie udało mi się utworzyć @ linku do wartości wyliczeniowej.Jak @linkować do wartości wyliczeniowej za pomocą Javadoc

Co chciałbym zrobić, to utworzyć Enum tak:

public enum Planet { 

/** 
* MERCURY is a fun place. 
*/ 
MERCURY, 

/** 
* VENUS is more fun. 
*/ 
VENUS, 

/** 
* But nothing beats the Earth. 
*/ 
EARTH, 

/** 
* Others we know nothing about. 
*/ 
OTHERS 
} 

A potem patrz Javadoc na Ziemi za pomocą łącza takiego:

{@link Planet.EARTH} 

Próbowałem {@link Planet#EARTH} również styl, ale bezskutecznie.

Ktoś wie, czy to w ogóle możliwe?

Odpowiedz

126

the # styl działa dla mnie:

{@link Planet#EARTH} 

Kluczem jest to, że pakiet planeta musi być importowane lub planeta musi być w pełni kwalifikowana - to znaczy:

{@link com.something.somethingelse.Planet#EARTH} 
+0

Jak zauważyłem sfussenegger, Eclipse obsługuje import dla ciebie. – aperkins

+0

Dziękuję za odpowiedzi pomocne! Zrobiłem to do pracy przy użyciu w pełni kwalifikowanego odnośnika. Czasami wynik kompilatora nie jest naprawdę pomocny przy określaniu, czym jest problem ... –

+2

Co jeśli wyliczenie jest zdefiniowane w klasie A i jeden próbuje odwoływać się do jednej z jego wartości z klasy B javadoc? Nie znalazłem ani A.Planet # EARTH ani A # Planet # EARTH do pracy na OpenJDK 1.6 update 24 javadoc, chociaż Eclipse wie, aby znaleźć deklarację w stylu A.Planet # EARTH. –

4

Używam Eclipse to sprawdzić, ale

{@link Planet#EARTH} 

styl wydaje się działać. Jednak w każdym razie normalnie wolę

@see Planet#EARTH 

. Nie jestem pewien, co Eclipse używa do generowania Javadoc, ale używam JDK6. Mimo to, może @see robi dla ciebie sztuczkę.

+2

Lubię '@ see', ale czasami potrzebujesz specjalnych przypadków. Na przykład moje zamówienia mają metodę 'isWithdrawn()', a ja mówię konkretnie '@return true, jeśli status tego zamówienia jest równy OrderStatus # WITHDRAWN, false else ' – corsiKa

2

Dopóki to importowany możesz go połączyć (ale kiedy to zrobisz, IMO sprawia, że ​​import niechlujny - jakie są używane w kodzie, a jakie w javadoc? Lubię używać w pełni kwalifikowanej nazwy).

Ale tak, Eclipse może zająć się tym wszystkim, a średnia

{@link Planet#EARTH} 

działa dobrze.

Jeśli korzystasz z Eclipse, Ctrl + Shift + O (na PC) lub Cmd + Shift + O (na Macu), automatycznie dostosowujesz import (oznacza to, że jeśli nie używasz dodatkowego importu, zostaną one usunięte, a także dodawanie importu, którego potrzebujesz).

Powiązane problemy