Копировать javadocs с сайта документации в локальный zip-файл

Мне интересно, есть ли какой-либо инструмент для «загрузки» javadocs с онлайн-хоста в локальный файл.

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


person Luke Dowell    schedule 06.07.2011    source источник


Ответы (3)


  1. Во-первых, убедитесь, что они еще не предлагают загрузку в формате zip или аналогичном.

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

  3. Затем взгляните на инструмент Wget. Это часть системы GNU, поэтому она включена во многие дистрибутивы Linux, но, я полагаю, также доступна для Windows и Mac.

Что-то вроде этого работает для меня:

wget --no-parent --recursive --level inf --page-requisites --wait=1 \
   https://epaul.github.io/jsch-documentation/simple.javadoc/

(без разрыва строки; здесь он должен быть экранирован обратной косой чертой \).

Посмотрите, что делает каждая опция, в руководстве, прежде чем пробовать это.

Если вы хотите делать это неоднократно, обратите внимание на опцию --mirror. Для загрузки других веб-сайтов также может быть полезен --convert-links, но я обнаружил, что он не нужен для Javadocs, которые обычно имеют правильные абсолютные и относительные ссылки.

При этом загружается множество одинаковых копий файла index.html с добавленными именами ?... (для ссылок FRAMES на каждой странице). Вы можете удалить эти файлы после загрузки, добавив опцию --reject 'index.html\?*', но они все равно будут загружаться первыми (и проверяться на наличие рекурсивных ссылок). Я пока не нашел, как вообще их не скачивать. (См. этот связанный вопрос о Serverfault.)

Возможно, здесь поможет добавление правильного уровня рекурсии (я не пробовал).

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

person Paŭlo Ebermann    schedule 07.07.2011
comment
Большое спасибо, это отличный инструмент. Я искал некоторое время для чего-то вроде этого. Спасибо еще раз. :) - person Luke Dowell; 10.07.2011
comment
Подтверждено, что работает на окнах. Скачать здесь: gnuwin32.sourceforge.net/packages/wget.htm - person Aleksandr Dubinsky; 25.01.2014
comment
Для исключения дубликатов index.html?... теперь вы можете использовать --reject-regex, начиная с wget 1.14: wget --reject-regex='index.html\?(.*)' ... - person Alexander Klimetschek; 11.02.2014

В этом случае... сделайте свои собственные javadocs!

Сначала нужен исходник. На момент написания Java 8 JDK поставлялся с zip-файлом с именем src.zip. Иногда по необъяснимым причинам Oracle не всегда включает исходный код. Поэтому для некоторых более старых версий (и кто знает о будущем) вы должны получить исходный код Java другим способом. Стоит также знать, что в прошлом Oracle иногда включала исходный код в версию JDK для Linux, но не в версию для Windows.

Я только что разархивировал этот файл... верхние каталоги: "com", "java", "javax", "launcher" и "org". Средство запуска каталога не содержит файлов для документирования.

Вы можете очень просто сгенерировать javadocs из любого или всех из них, перейдя в командной строке/терминале в каталог ...\src. Тогда иди

javadoc -d docs -Xmaxwarns 10 -Xmaxerrs 10 -Xdoclint:none -sourcepath . -подпакеты java:javax:org:com

NB обратите внимание, что есть "." после -исходный путь

Просто как тот. Создание собственных javadocs также имеет огромное преимущество, поскольку вы знаете, что они точно соответствуют JDK, который вы используете в своей системе.

То же самое относится к документированию всех без исключения файлов Java .jars (с исходным кодом), которые вы используете. Однако все версии большинства jar-файлов можно найти вместе с документацией, доступной для загрузки на Maven Central http://search.maven.org< /а>...

person mike rodent    schedule 31.08.2016
comment
Отличное предложение. Спасибо! Если кто-то делает это с JDK 7, параметр -Xdoclint должен быть удален. - person G. Stevens; 11.08.2017

Для загрузки последней документации по Java (jdk-8u77) API

Перейдите по адресу http://www.oracle.com/technetwork/java/javase/downloads/index.html

В разделе "Дополнительные ресурсы" и в разделе "Документация по Java SE 8"
нажмите кнопку "Загрузить".

В разделе Документация по Java SE Development Kit 8 > Документация по Java SE Development Kit 8u77

Примите лицензионное соглашение и нажмите на загрузочный zip-файл.

Разархивируйте загруженный файл. Запустите документы API из jdk-8u77-docs-all\docs\api\index.html.

Для загрузки API других версий Java выполните следующие действия.

Перейдите на страницу http://docs.oracle.com/javase/.

В раскрывающемся списке Release выберите один из Java SE 7/6/5.

На соответствующей странице JAVA SE и в левом боковом меню «Загрузки» нажмите «Документация JDK 7/6/5» или «Документация по Java SE».

Теперь на следующей странице выберите соответствующую документацию Java SE Development Kit 7uXX.

Примите лицензионное соглашение и нажмите «Загрузить zip-файл».

Разархивируйте файл и запустите документацию по API из
jdk-7uXX-docs-all\docs\api\index.html.

person vinsinraw    schedule 08.04.2016
comment
Не работает для Java SE 6 - это просто ссылка на страницу загрузки Java SE 8 [:-( - person user85421; 13.04.2016