OpenJDK 소스를 온라인으로 검색 할 수 있습니까?


80

SourceForge의 프로젝트에서 할 수있는 것처럼 OpenJDK의 소스 코드를 온라인으로 검색 할 수 있습니까? 머큐리를 사용한 적이 없어서 혼란 스러웠습니다.

(참고 : 소스를 다운로드하고 싶지 않습니다. 온라인으로 검색하여 일부 메서드가 어떻게 구현되는지 확인하고 싶습니다.)

답변:


94

OpenJDK는 이제 GitHub에 있습니다 : https://git.openjdk.java.net/jdk

대규모 프로젝트이지만 jdk / src / java.base / share / classes 아래에서 핵심 클래스의 구현을 찾을 수 있습니다 .

예를 들어 여기 에서 java.util.List 구현을 찾을 수 있습니다 .


이전 버전을 찾아야하는 경우에도 이전 Mercurial 인터페이스 를 사용해야합니다 .

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 에서 끝나야합니다 .


2
이것을 시도하는 사람에게는 기본 지점 번호가 변경됩니다. 따라서 설명 된 절차는 정확합니다. 링크가 작동하지 않더라도 놀라지 마십시오.
Patrick


3
@Patrick : 변경 세트 ID를 '팁'으로 바꾸면 항상 작동합니다. 가리키는 버전은 시간이 지남에 따라 변경 될 수 있지만 항상 최신 버전입니다 (어떤 의미에서는). 그에 따라 게시물을 편집했습니다.
Tom Anderson

4
저장소 이름에서 "게이트"는 무엇을 의미합니까?
finnw

2
이제 네이티브 메서드를 구현하는 네이티브 코드를 보려면 어디에서 찾을 수 있습니까?
Ustaman Sangat 2011


7

여기서 얻을 수있는 기본적인 단계입니다 최신 또는 어떤 출시 된 버전Openjdk 8(또는 기존의 자바 버전) 소스 코드, 그리고 그들을 사용 Eclipse.

단계 :

  • [소스 찾아보기]
  • jdk 용 열기 URL, 예 : http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/
  • 딸깍 하는 소리 tags
  • 적절한 태그를 선택하십시오. jdk8u73-b02
  • 그런 다음 browse,
  • 그런 다음 폴더를 찾습니다 src/share/classes.
  • [다운로드 소스]
  • 다음 중 하나를 클릭 bz2/ zip/ gz관련 압축 형식으로 다운로드 소스, ( 예를 들면가 jdk8u73-b02zip형식, URL이 될 것입니다 : http://hg.openjdk.java.net/jdk8u/jdk8u/jdk/archive/2ab13901d6f1.zip/ src / share / classes / )
  • [일식에서 사용]
  • 압축을 풀고
  • "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/)
  • 이클립스에서 설치된 jre의 jar에 대한 소스 파일을 지정하고 설치된 jre의 각 jar에 대한 소스 첨부를 각각 지정할 수 있으며 가장 일반적인 jar는 아마도 rt.jar,
  • 선택적으로 완전히 효과를 내기 위해 프로젝트 새로 고침이 필요할 수 있습니다.
  • 그것을 테스트하십시오 : eclipse에서 ctrl + shift + t입력 한 다음 해당 설치된 jre를 Cancellable선택하십시오 sun.nio.fs.Cancellable. 소스 코드를 사용할 수 있으면이 소스를 사용할 수 없으므로 jdk_home/src.zip추가 openjdk 소스에서 가져야합니다.
  • 소스를 다시 전환 : 외부 openjdk 소스를 사용하지 않으려는 경우 "jdk_home / src.zip"을 사용하도록 다시 전환 할 수 있습니다.
  • 확인

6

다음은 리포지토리를 탐색하고 원하는 비트 만 보는 방법입니다. http://hg.openjdk.java.net/ 그것이 당신이 요구하는 것입니까?


1
정확히. 요청하기 전에 거기에 갔지만 Mercurial 인터페이스에서 길을 찾을 수 없었습니다. :(
Hosam Aly

죄송합니다. 실제로 openjdk.java.net/projects/nio에 가서 거기에서 내 길을 찾으려고했습니다. 이 링크를 다시 확인하겠습니다. 감사.
Hosam Aly




당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.