2016-06-17 4 views
-1

어셈블러를 사용하여 클래스 파일로 변환하지만 어셈블러를 실행할 때 .java 파일이 아닌 .j 파일 만 허용합니다..j 파일이란 무엇입니까? .java 파일을 .j 파일에서 가져 오는 방법은 무엇입니까?

+0

사용중인 도구에 대한 설명서에 대한 조언이 있습니까? –

+0

이것은 나에게 이해가되지 않습니다. 자바 파일을 클래스 파일로 "변환"하려면 ** 컴파일러 **가 필요합니다. 다른 방법으로 원한다면 ** 디 컴파일러 **가 필요했습니다. ** 어셈블러 **는 실제로 여기에 적합하지 않습니다. – Fildor

+0

다음은 문서 링크입니다. https://github.com/Storyyeller/Krakatau https://github.com/Storyyeller/Krakatau/blob/master/README.TXT – Razieh

답변

1

.j 파일은 간단한 어셈블러 형식으로 작성된 Java 클래스의 설명입니다. Java Virtual Machine 명령어 세트를 사용하는 구문 및 Jasmin 어셈블러는이를 Java 런타임 시스템에 의한로드에 적합한 바이너리 Java 클래스 파일로 변환합니다.

귀하의 질문에. Java 응용 프로그램을 컴파일하려면 다른 컴파일러를 얻어야합니다.

2

Q : .j 파일이란 무엇입니까?

당신은 당신이 크라 카타 우 바이트 코드 도구를 사용하고 있다고 ...

A ".j"파일 Krakatua의 JVM 바이트 코드의 어셈블리 언어를 포함하는 파일입니다. Krakatua 어셈블러를 사용하여 ".class"파일로 되돌릴 수있는 사람이 읽을 수있는 바이트 코드 표현입니다.

는 "크라 카타 우 어셈블러는 재스민과 유사한 구문을 사용하지만 많은 새로운 기능과 함께, 가장 중요한 능력은 직접 을 지정 :

당신이 링크 된 문서는 이것에 대해 Krakatua 어셈블리 언어가 말한다 상수 poolreferences 구문에 대한 자세한 내용은 문서 폴더에 있습니다. "


Q : 어떻게 .j 파일 된 .java 파일을받을 수 있나요?

먼저 ".j"파일을 ".class"파일로 어셈블 한 다음 ".class"파일을 ".java"파일로 디 컴파일해야합니다. 원래 자바 소스 코드를 복구 할 수 없습니다, 당신은 디 컴파일 "된 .java"파일이 절차에 의해 얻을 것을 알 수 있습니다

주입니다

  • 유효하지 않은 (즉, 컴파일 가능한) Java 소스 코드 또는
  • ".j"파일/".class"파일을 Java로 올바르게 변환하지 않았습니다.
+0

답장을 보내 주셔서 감사합니다 .java 파일에서 .j 파일을 가져 오는 방법이 있습니까? – Razieh

+0

@Razieh 표준 Java 컴파일러를 사용하여 ".java"를 ".class"로 컴파일 한 다음 ".class"를 ".j"로 디스 어셈블합니다. –

+0

내 의도는 jar 파일 (많은 클래스가있는)에서 하나의 클래스 파일을 편집하는 것이다. 그래서이 어셈블러를 사용했습니다!하지만 자바 파일을 편집하는 옵션이 바이트 코드 파일이 아니라 바이트 코드 파일을 조작하는 것이 쉽지 않은지는 몰랐습니다. j 파일을 자바로 변환하려면 자바 파일을 편집 한 다음 표준 자바 컴파일러를 사용하여 클래스에 다시 컴파일하면 전체 프로젝트를 다시 컴파일하고 싶지 않기 때문에 나로서는 불가능합니다. main 함수) 컴파일러가 sysntax 에러를 준다. 다른 해결책이 있습니까? – Razieh