Как я могу автоматически обновить Javadoc при изменении сигнатуры метода в Eclipse?

Я использую Eclipse IDE для своего Проекта Java.

У меня есть одна проблема. У меня есть методы в моем проекте, которые имеют комментарии Javadoc как следующим образом:

/**
 * Retruns the string representation of a input stream
 * @param in
 * @return
 * @throws IOException
 */
public static String getStringFromInputStream (InputStream in) throws IOException {
    StringBuffer out = new StringBuffer();
    byte[] b = new byte[4096];
    for (int n; (n = in.read(b)) != -1;) {
        out.append(new String(b, 0, n));
    }
    return out.toString();
}

Теперь я хочу знать, что это - там любой путь, которым каждый раз, когда если я вношу изменения в подписи своего метода, те изменения отражают в javadoc автоматически.

24
задан Paŭlo Ebermann 15 August 2011 в 21:29
поделиться

3 ответа

Нажмите Atl + Shift + R и измените

1
ответ дан 29 November 2019 в 00:18
поделиться

FileReader javadoc :

Класс удобства для чтения файлов символов. Конструкторы этого класса предполагают, что подходящая кодировка символов по умолчанию и размер байтового буфера по умолчанию. Чтобы самостоятельно указать эти значения, создайте InputStreamReader в FileInputStream.

Итак:

Reader reader = new InputStreamReader(new FileInputStream(fileName), "utf-8");
BufferedReader br = new BufferedReader(reader);

Если это все еще не работает, возможно, консоль не набора правильно отображать UTF-8 символы. Конфигурация зависит от используемой среды IDE и довольно проста.

Обновить: В приведенном выше коде заменить utf-8 на cp1256 . Это прекрасно для меня (WinXP, JDK6)

Но я бы рекомендовал вам настаивать на файле, создаваемом с помощью UTF-8. Потому что cp1256 не будет работать на китайцев, и у вас снова будут подобные проблемы.

-121--3509661-

Пройдя через Введение в Tkinter , я придумал код ниже, который не делает ничего, кроме дисплея текстового поля и удаления его при нажатии кнопки «Очистить текст» :

import tkinter as tk

class App(tk.Frame):
    def __init__(self, master):
        tk.Frame.__init__(self, master, height=42, width=42)
        self.entry = tk.Entry(self)
        self.entry.focus()
        self.entry.pack()
        self.clear_button = tk.Button(self, text="Clear text", command=self.clear_text)
        self.clear_button.pack()

    def clear_text(self):
        self.entry.delete(0, 'end')

def main():
    root = tk.Tk()
    App(root).pack(expand=True, fill='both')
    root.mainloop()

if __name__ == "__main__":
    main()
-121--1563056-

Я не знаю о каких-либо путях автоматической синхронизации заголовка Javadoc, но если переименовать параметр с помощью Ctrl-1 + Переименовать в файле , заголовок Javadoc будет соответствующим образом переименован.

4
ответ дан 29 November 2019 в 00:18
поделиться

Eclipse предоставляет довольно хорошие возможности для обеспечения правильности javadoc помимо рефактора Rename , упомянутого JesperE:

  • ​​Операция рефакторинга Изменить подпись метода также изменяет javadoc (добавляет / удаляет необходимые теги). Вы должны использовать его или Переименовать , чтобы изменить код, который уже используется.
  • Если вы активируете Добавить теги Javadoc на странице Preferences / Java / Editor / Typing , Eclipse сгенерирует правильную заглушку javadoc после ввода / ** + Введите перед методом.

Вы также можете установить параметры компилятора для проверки отсутствующих тегов javadoc в Preferences / Java / Compiler / Javadoc . В этом случае вы получаете предупреждения от компилятора об отсутствующих / лишних тегах, и у вас есть quickfix ( Ctrl + 1 ) для их исправления. Это хороший вариант для обеспечения правильности существующих документов javadoc в долгосрочной перспективе.

11
ответ дан 29 November 2019 в 00:18
поделиться
Другие вопросы по тегам:

Похожие вопросы: