Разрешено ли вложение тега javadoc {@Code {@link}}? - PullRequest
6 голосов
/ 21 ноября 2011

Я пытаюсь разместить ссылку внутри тега кода в Javadoc.Ниже моя попытка.

<code>/**
* This method builds XML.
* <pre>
* {@code
* <Person {@link #companyId}='1234'/>
* }
* 
** /

Но в сгенерированном Javadoc ссылка отсутствует.Строка {@link #companyId}='1234' идет как есть.

  • Разрешено ли вложение тегов javadoc?
  • Есть ли способ добавить ссылки в код?

Ответы [ 2 ]

4 голосов
/ 21 ноября 2011

Зависит от тега. Тег {@code ...} интерпретирует его содержимое как есть, то есть избегает любой интерпретации содержимого как Javadoc или HTML. Это похоже на содержимое тега {@link ... }.

Вот обходной путь:

<code>/**
 * This method builds XML.
 * <pre>
 * {@code <Person }{@link #companyId}{@code ='1234'/>}
 * 
** /
0 голосов
/ 26 июня 2013

В Eclipse, по крайней мере, работает любое из следующих действий, в зависимости от того, хотите ли вы дополнительный кодированный текст до или после ссылки.

{@code {@link foo}
{@code {@link foo} {@code bar}
{@code baz}{@code {@link foo}
{@code baz}{@code {@link foo} {@code bar}

Для того, чтобы это работало, необходимы уникальная фигурная скобка и отдельные аннотации @code. Если вам не нужен пробел между foo и bar в javadoc, вы можете удалить пробел перед последним @code, хотя этого нельзя сделать для пробела между baz и foo.

Анализатор JavaDoc, который использует eclipse, успешно преобразует его в ссылку с форматированием кода, поэтому он хорош по крайней мере для временного использования. Тем не менее, это не совсем лучшая практика, и она может измениться в будущем, поэтому вам, вероятно, следует использовать решение Paulo, если вы пишете код, который будет через год.

...