2012-04-24 3 views
1

에서 프로젝트를 복원하고 싶습니다. 저는 netbeans와 java에 상당히 새로운 것을 지적하고 싶습니다. 정확히 웹에서 필요한 것을 찾을 수 없었습니다.
소프트웨어의 소스 파일을 다운로드하고 netbeans에서 수정했습니다. 자연스럽게 프로젝트를 빌드 할 때 netbeans는 (예를 들어) documents/project_folder/dist/lib 폴더와 내가 사용할 수있는 완성 된 JAR 파일을 만듭니다.
내가 실수로 소스 파일을 삭제하고 JAR 및 lib 폴더를 사용하여 이전에 만든 새로운 소스 파일에 적용한 모든 변경 사항을 적용하려는 경우 여전히 가능합니까?jar 파일

답변

1

우선 lib 폴더의 jar 파일에서 소스를 다시 가져올 수 없습니다. Jar 파일은 클래스 파일 만 포함하는 실행 파일입니다. java 디 컴파일러를 사용하여 소스를 다시 가져올 수 있습니다.

+0

나는 정확하게 이해하는지 모른다. 것은 내가 프로젝트에 대한 편집되지 않은 원시 소스를 가지고 있고, jar에서 이전 소스를 "추출"할 필요가 없다. 그냥 jar를 사용하여 새로운 소스에 diff를 적용하면된다. 이 일을 캔틴? – 3a2roub

+0

괜찮습니다. 단지 기록을 위해 : JD를 사용하여, 나는 winrar로 항아리를 추출하는 것과 같은 소스 폴더라고 생각하는 것으로 끝 맺었다. 그렇지 않습니까? – 3a2roub

+0

jar을 추출하면 소스 파일이 아닌 .class 파일이 모두 제공됩니다. 원본을 만든 폴더 구조와 동일한 폴더 구조로 가져 오는 것입니다. winrar를 사용하여 추출한 후에는 폴더 안의 파일을 보면 .java 파일이 아닌 .class 파일입니다. –

0

SCM에 소스 코드를 보관하십시오. 원격 SCM을 사용하면 코드가 손실되지 않습니다. 참조 : Google 코드, github, 런치 패드 등

1

NB에는 기본적으로 버전 관리 및 자동 저장 기능이 없습니다. NB7에서 git을 살펴보십시오.

디 컴파일러로 Jar에서 복원 할 때 코드가 무엇인지 알면 소스를 다시 얻을 수있는 큰 기회가 있습니다.

1

일부 역 컴파일러를 사용하여 소스를 다시 가져올 수 있습니다. DJ Decomipler와 같은 많은 디 컴파일러를 사용할 수 있습니다. 내가 좋아하는 것은 Jd Java Decompiler입니다. 그 크기가 매우 작고 잘 작동합니다.

1

저는 Eclipse 사용자이지만 Eclipse와 Netbeans가 어느 정도 비슷하다고 생각합니다. jar가 소스를 포함하여 작성되지 않은 한, 클래스 파일을 디 컴파일하는 다른 선택 사항은 없습니다.

필요할 때 나는 보통 JD-GUI를 사용한다. JD-GUI는 jars를 decompiling하는 데 꽤 좋은 일을한다.

1

정확히 컴파일 된 바이트 코드에서 소스 코드를 검색 할 수 없습니다. 하지만 어느 정도 코드를 복구 할 가능성이 있습니다

JD는 좋은 Java 디 컴파일러입니다. http://java.decompiler.free.fr/?q=jdgui

JD는 원본 소스 코드가 손실 된 경우 슈퍼 영웅이라고 생각합니다.