Можно ли просмотреть исходный код OpenJDK онлайн? - PullRequest
73 голосов
/ 04 января 2009

Можно ли просматривать исходный код OpenJDK онлайн так же, как я могу делать с проектами SourceForge? Я никогда раньше не использовал Меркурий, поэтому я чувствовал себя сбитым с толку.

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

Ответы [ 8 ]

89 голосов
/ 04 января 2009

Используйте http://hg.openjdk.java.net/, как предложил Дункан.

Интерфейс Mercurial там довольно запутанный, если вы к нему не привыкли, и, поскольку это большой проект, может быть трудно найти то, что вы ищете.

Вот пример:

Чтобы найти реализацию JDK6 java.util.List, выберите «jdk6», «jdk», выберите «Обзор». Затем перейдите к src / share / classes / java / util / List.java.

Вы должны в конечном итоге на http://hg.openjdk.java.net/jdk6/jdk6/jdk/file/tip/src/share/classes/java/util/List.java

8 голосов
/ 20 июля 2013

Последний JDK 8 OpenJDK Библиотека классов Java Исходный код можно найти здесь: http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/file/tip/src/share/classes/

7 голосов
/ 18 марта 2016

Вот базовый шаг для получения последней или любой выпущенной версии Openjdk 8 (или любой существующей версии Java) исходного кода и использования их в Eclipse.

Steps :

  • [просмотреть источник]
  • Открытый URL для JDK, например, http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/
  • нажмите tags
  • выберите правильный тег, например, jdk8u73-b02
  • затем нажмите browse,
  • затем перейдите в папку src/share/classes,
  • [источник загрузки]
  • , затем щелкните один из bz2 / zip / gz, чтобы загрузить источник в соответствующем сжатом формате, ( например, для jdk8u73-b02 в zip формате, URL будет: http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/archive/2ab13901d6f1.zip/src/share/classes/)
  • [использовать в затмении]
  • распакуйте его,
  • zip-папку "classes /", сделайте "classes /" в качестве корневого каталога .zip-файла (например, сначала cd jdk-2ab13901d6f1/src/share/, затем zip -r openjdk_8u73_b2_src.zip classes/)
  • переместите созданный zip-файл в нужное место, некоторое время он будет там оставаться (например, mv openjdk_8u73_b2_src.zip /media/Eric/software/java/jdk/openjdk/openjdk8u73-b02/source/)
  • в eclipse, указать исходный файл для jar-файлов установленного jre, может указать исходное вложение для каждого jar-файла установленного jre соответственно, наиболее распространенный jar, вероятно, rt.jar,
  • при необходимости может потребоваться обновить проект, чтобы он полностью вступил в силу, но не уверен, что это необходимо,
  • протестируйте его: в Eclipse, ctrl + shift + t, затем введите Cancellable, выберите sun.nio.fs.Cancellable соответствующего установленного jre, если исходный код доступен, то это хорошо, поскольку этот источник недоступен в jdk_home/src.zip, он должен быть из дополнительного источника openjdk,
  • переключить источник назад: может переключиться обратно на использование «jdk_home / src.zip», если не хотите использовать внешний источник openjdk,
  • OK
6 голосов
/ 13 сентября 2013

Добавьте «/ file» к корневым URL-адресам для просмотра браузера следующим образом:

6 голосов
/ 04 января 2009

Вот способ просмотреть репозитории и посмотреть только те биты, которые вы хотите. http://hg.openjdk.java.net/ Это то, что вы спрашиваете?

2 голосов
/ 16 сентября 2014

Grepcode.com отлично подходит для подобных вещей - не только для источников OpenJDK, с поиском в классах / методах и связями между классами непосредственно в выделенном коде:

http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/8-b132/java/net/Socket.java

1 голос
/ 20 апреля 2019

Как уже упоминалось в других ответах, хранилище исходного кода находится в https://hg.openjdk.java.net

Однако команда OpenJDK отражает некоторые проекты на GitHub: https://github.com/openjdk

Включая последнюю версию проекта Java (https://hg.openjdk.java.net/jdk/jdk): https://github.com/openjdk/jdk

1 голос
/ 27 июля 2018

Конечно, http://hg.openjdk.java.net - один хороший вариант. Другой не менее хороший источник - zGrepCode https://zgrepcode.com/java/openjdk/. Он имеет открытые версии JDK и Oracle Java.

...