라이브러리에 액세스하지 않고 .java 파일을 다시 컴파일 하시겠습니까?

StackOverflow https://stackoverflow.com//questions/23050803

  •  21-12-2019
  •  | 
  •  

문제

여기에 내 상황이 있습니다 : 2.Class 파일이있는 .jar 파일이 있습니다. 둘 다 라이브러리에서 가져 오는 도서관에서 (도서관이 독점적이며 어떻게 숨겨져 있으므로 숨겨져 있지 않습니다).

이제 이러한 .class 파일의 구현을 변경하고 싶습니다.그러나 디 컴파일은 문제가 없지만 코드가 컴파일 할 수없는 라이브러리가 없으므로 문제가되지 않습니다.누락 된 방법을위한 "스텁"을 만드는 것에 대해 들어 봤지만이 경우 이러한 스텁을 만드는 방법을 알아내는 Java에 대해 충분히 모르겠습니다 (올바른 방향의 포인터가 높아질 수 있습니다).

수정 된 파일을 컴파일 할 수있는 방법이 있습니까?컴파일러가 누락 된 방법을 무시하도록 강요하는 것처럼?또는 "NoFollow"> Java Bytecode Editor와 같은 유일한 옵션입니다 ?

도움이 되었습니까?

해결책

디 컴파일 클래스가 일부 누락 된 종속성을 사용하는 경우

class X {
  void x() {
      y.Y y = new y.Y();
      y.y();
  }
}
.

스텁을 만들어야합니다

package y;
public class Y {
    public void y() {
    }
}
.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top