[java] .jar 파일의 내용보기

jar 파일에서 클래스, 메소드, 속성 등을 보는 가장 쉬운 방법은 무엇입니까? 나는 매우 유용한에 해당 뭔가를 찾고 있어요 루츠 Roeder .NET 반사판 – 자바



답변

JDK를 사용하면 jar -tfjar 파일이 나열됩니다. javap특정 클래스 파일에서 자세한 내용을 제공합니다.


답변

나는 보통 7-Zip으로 그것들을 연다. 그것은 적어도 패키지와 클래스와 리소스를 볼 수있게한다.
메소드 또는 필드를 볼 필요가 있다면 Jad를 사용하지만 물론 JavaDoc에 의존하는 것이 좋습니다 …

이제 SO 어딘가에 어떤 Eclipse 파일이 클래스가있는 jar 파일인지 찾기 위해 Eclipse 플러그인이 언급되었습니다. 아마도 더 많은 작업을 수행 할 수 있습니다 (예 : 요청한 것).

[편집] SO 스레드 참조. 묻는 것은 아니지만 어떻게 든 관련이 있으므로 유용합니다. Java : 클래스 이름이 주어진 jar 파일을 어떻게 알 수 있습니까?


답변

내가 개인적으로 사용하는 것은 JD-GUI입니다. 무료 ‘디 컴파일러’로, 클래스의 소스 코드, 클래스 및 객체를 볼 수있을뿐만 아니라 왼쪽의 트리 메뉴에서 파일 구조를 볼 수 있습니다. 그러나 클래스를 직접 수정할 수는 없습니다.

JD-GUI 웹 사이트 : http://jd.benow.ca/


답변

누군가 이것을 이미 모르는 경우 JAR 파일은 프로그램의 클래스, 리소스 등 및 일부 메타 데이터를 포함하는 ZIP 파일 일뿐입니다. 하나를 추출하여 구성 방법을 확인할 수 있습니다.

따라서 unzip기억하고 사용하기 쉬운 명령을 사용하고 있습니다.

unzip -l <jar-file-name>.jar

당신이 이름으로 jar 파일이있을 경우 예를 들어, test.jar다음 unzip -l test.jarjar 파일의 내용을 모두 나열합니다.

다른 모든 답변은 훌륭하지만, 그러나 대부분에, 당신은 같은 일부 소프트웨어를 사용하는 것 7 zip또는 JDK이 당신을 필요로하지 않는 동안 W /이 큰의의를 가지고 다른 일식 도구 또는 그것은 리눅스에서 기본적으로 제공 Mac은 매우 가볍고 사용하기 편리합니다 .

을 사용할 수도 있습니다 zipinfo <your jar file>. OS가이를 지원하는 경우


답변

메소드 명, 필드 등

IDE에서 프로젝트에 jar를 추가하면 일반적으로 메소드와 필드 이름을 볼 수 있지만 자세한 구현은 볼 수 없습니다. NetBeans, Eclipse, IntelliJ 등이 가능합니다. IDE 내에서 jar 구조를 직접 찾아 볼 수 있습니다.

내용 만

내용을 보는 것과 같은 것을 위해 다음을 사용할 수 있습니다.

  • jar tvf jarfile.jar
  • winzip 또는 zip 도구

소스 코드

소스 코드에 액세스하려면 JAD 또는 프론트 엔드 중 하나 또는 다른 디 컴파일러와 같은 디 컴파일러를 사용합니다. 코드가 난독 화되면 …


답변

Tom Hawtin 답변을 확장하면 목록을 파이프하여 원하는 클래스 또는 파일을 필터링 할 수 있습니다.

jar tf my-fat-jar-file.jar | grep filename

이것은 bash / zsh 및 이와 유사한 것 또는 emacs의 eshell에서 작동해야합니다.

추가 정보 : https://docs.oracle.com/javase/tutorial/deployment/jar/view.html


답변

jar -tvf file_name.jar

의 파일 이름인쇄합니다 .

파일의 내용을 보려면 다음 방법으로 폴더의 파일을 추출 할 수 있습니다 .

jar -xvf file_name.jar

이것은 jar 파일의 압축을 풀고 이것을 실행중인 동일한 디렉토리에 내용을 넣습니다.

또는 Windows에서 .jar 파일의 이름을 .zip으로 바꾸고 압축을 풀면 jar 파일의 내용을 추출하고 볼 수 있습니다. jar은 내부적으로 zip 파일입니다.