Общая команда javadoc, которая всегда генерирует все javadocs в данном дереве?

20

Когда мне нужно генерировать javadocs для нового, незнакомого проекта, я нахожу, что трачу много времени, пытаясь просто написать правильную команду, указав все пакеты, все деревья-источники и т. д. Это отнимает много времени и ошибок -prone: Вероятно, мне не хватает источника.

Итак, скажем, у меня есть каталог myproj, и под ним есть несколько пакетов (и различные другие ресурсы и прочее), и в этих каталогах пакетов в конечном итоге есть некоторые src / directories, а затем много моих / awesome / структуры java / project / package.

Есть ли одна команда, которая всегда будет переписываться через ВСЕ и генерировать ВСЕ javadocs в одном месте вывода? Мне все равно, сколько времени потребуется. Что-то мозговое, вроде javadoc -d doc -sourcepath . -subpackages * , было бы здорово. В противном случае, какой самый простой способ генерировать все javadocs, независимо от структуры каталогов?

    
задан Steve Bennett 17.01.2011 в 04:10
источник

2 ответа

29

Используйте find , чтобы найти все исходные файлы Java, а затем отправить их на javadoc :

find . -type f -name "*.java" | xargs javadoc -d outputdir 
    
ответ дан dogbane 17.01.2011 в 09:29
источник
  • Дополнительные знаки, команда, которая работает на XP? (Это было очень слабо для меня, не говоря уже об этом.) Будет ли МКС, если это невозможно, иначе. –  Steve Bennett 18.01.2011 в 05:43
  • Yay, это сработало. (Один час для установки gnuwin32 ... кто знал?) –  Steve Bennett 18.01.2011 в 07:09
  • лучше бросьте некоторые аргументы памяти, чтобы убедиться: find. -type f -name "* .java" | xargs javadoc -d outputdir -J-ms39m -J-mx40m –  Steve Bennett 18.01.2011 в 07:16
  • спасибо за сообщение! :) –  Nitish Upreti 01.04.2011 в 12:39
  • Большое спасибо. Очень полезно. –  Harshal Kshatriya 03.10.2012 в 11:07
17

В Windows вы можете сделать это следующим образом:

Создать список файлов:

dir /s /b *.java > file.lst

Создать javadoc:

javadoc -d outputdir @file.lst
    
ответ дан stian 09.02.2011 в 15:18
источник
  • Отличная, родная, функционально эквивалентная альтернатива вышеизложенному. –  Steve Bennett 10.02.2011 в 05:24
  • Есть ли способ заставить Javadoc генерировать индексный список всех пакетов после использования этого метода. с простым «javadoc -d [dir] @ [file]» методом нет индекса. –  JasonRobinson 30.08.2017 в 23:54