2013-04-29 1 views
3

기존 프로젝트 (metacircular interpreter)에서 Soot를 사용하는 방법을 알아 내려고하고 있습니다. 특히, 자바 바이트 코드를 해석 할 수있는 편리한 3- 주소 코드 (Jimple 또는 Shimple)로 변환하기 위해 Soot를 사용하려고합니다. 나중에 더 많은 일을하고 싶지만, 지금은 전환 만 원한다.Soot Java 바이트 코드 프레임 워크 : Jimple/Shimple로 단일 클래스 파일을 컴파일하는 방법

이 번역을 수행하는 가장 좋은 방법은 무엇입니까? 그을음이 기능의 톤,하지만 난 진짜로에만 가능한

compileClass: Byte[] -> ShimpleClass 

바람직하게는 순수한 하나의 메소드 (메소드 내에서 패키지 즉 더 설치/해체에 필요한 모든 것을) 필요 ginormous 한 프로젝트처럼 보인다. 나는 javadoc/papers/presentation을 보느라 많은 시간을 보냈지 만, 대부분은 명령 행 도구 또는 Eclipse 플러그인처럼 사용법에 중점을 둔 것처럼 보인다. 누구든지 시작 지점을 알려주는 포인터를 줄 수 있습니까?

+0

이것은 4 년 반 전에 질문되었습니다. 이 질문에 대한 답을 어디에서 발견했는지 기억하지 못할 것입니다. – User1291

답변

0

아마도 Soot 메일 링리스트에서 가장 쉽게 대답 할 수 있습니다.

Soot는 파일 시스템에서 .class 파일을로드하도록 설정되지만, ByteArrayInputStream에서도 무언가를로드하도록 지시해서는 안됩니다. 당신 사건에 도움이 될 것 같아요.