2014-09-27 4 views
0

Eclipse에서 리팩토링을 시도하기 위해 하드 디스크에서 Java 프로젝트를 삭제했습니다. 다행히 최근 버전의 실행 가능 Jar 파일을 발견하여이를 .class 파일로 압축 해제했습니다. SO에서 '디 컴파일'스레드를 읽었으며 showmycode.com을 시도했지만 더 많이 기대하고있었습니다. .class 파일을 .java 파일로 변환 할 수 없습니까? 주석이 포함되어 있습니다. 아무 것도 변경되지 않았습니까? 또는 .jar 파일에서 찾을 수 있습니까? 최선의 선택은 무엇입니까? 주제에 대한 다른 답변은 구식 인 것 같습니다. 소프트웨어를 다운로드해야합니까?.class로 .class 변환.

+2

휴지통을 확인하십시오. :) 리버스 엔지니어링은 완벽하지 않습니다. –

+1

아니요. 존재하지 않는 정보는 복원 할 수 없습니다. 따라서 어떤 도구도 주석, 동일한 코드 구문 또는 서식에 대한 선택 사항을 복원하지 않습니다. 디버깅 정보로 컴파일하지 않으면 로컬 변수의 이름도 손실됩니다. – Holger

+1

Eclipse 프로젝트가 있지만 프로젝트에 소스가없는 경우 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 '로컬 기록에서 복원'을 선택하여 Eclipse에 백업이 있는지 확인하십시오. –

답변

3

주석을 다시 가져올 수 없으며 .java에서 .class로 이동하면 주석이 손실됩니다. 어떻게 "Java Decompiler"가 그것을 할 수 있는지에 관해서는, 당신의 코드는 당신이 작성한 것과 정확하게 일치하지 않을 것입니다. 그러나 당신이 가져온 코드는 원래 작성한 코드와 기능적으로 같습니다.

JD은 이전에 사용했던 디 컴파일러이며 출력에 만족합니다.

+0

이길 : P. 2 년 전에 내가 사용할 수있는 소스 코드가없는 다른 프로젝트에 궁금한 점이 있었다. – Alex