URLClassLoader로 생성 된 객체를 인터페이스 유형으로 캐스팅

페 트레 포 페스 쿠

jar 파일에서 클래스를로드하고 해당 클래스의 인스턴스를 만들려고합니다. 모든 클래스는 IModule 인터페이스를 구현합니다.

인스턴스가 성공적으로 생성되었지만 개체를 ​​IModule 유형으로 캐스팅하려고 할 때마다 ClassCastException이 발생합니다.

이것은 내 코드입니다.

urlCl = new URLClassLoader(new URL[] { classFile.toURL()},System.class.getClassLoader());
Class projectClass = urlCl.loadClass("Project");
IModule projectObj = (IModule) projectClass.newInstance();

내 프로젝트는 IModule이 "프로젝트"와 "로더"의 클래스 경로에 추가되는 별도의 프로젝트로 일식 상태에 있습니다.

내가 뭘 잘못하고 있는지에 대한 제안이 있습니까? 감사.

안드레스

Java에서 클래스 또는 인터페이스는 정규화 된 이름과이를로드 한 클래스 로더로 식별됩니다.

아마도 객체를 올바른 인터페이스로 캐스트하려고하지만 다른 클래스 로더에 의해로드되었을 것입니다.

이것 좀보세요 :

ClassLoader 문제로 인한 ClassCastException에 대한 솔루션

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Sys.time ()으로 생성 된 캐스팅 객체

분류에서Dev

인터페이스를 객체 유형으로 변경

분류에서Dev

인터페이스로 객체 다운 캐스팅

분류에서Dev

TypeScript : 인터페이스에서 동적으로 공용체 유형 생성

분류에서Dev

Javascript 익명 객체를 유형이 지정된 객체로 캐스팅 할 수 있습니까? 어떻게?

분류에서Dev

객체로 인터페이스를 확장하여 객체 소품이 인터페이스 프로토 타입에 병합 된 새 인터페이스를 생성하는 방법은 무엇입니까?

분류에서Dev

Linq 표현식에서 일반 인터페이스 유형으로 객체 캐스팅

분류에서Dev

객체 인 제네릭 클래스를 유형으로 캐스팅

분류에서Dev

인터페이스를 구체적인 유형으로 캐스팅하는 방법

분류에서Dev

객체를 '실제'유형으로 일반적으로 캐스팅

분류에서Dev

COM 개체를 인터페이스로 강제 캐스팅

분류에서Dev

포인터 벡터에서 기본 형식으로 파생 된 형식으로 캐스팅 된 파생 형식의 첫 번째 요소를 반환합니다.

분류에서Dev

인터페이스를 제네릭 유형으로 사용할 때 잘못된 캐스트 예외

분류에서Dev

java.lang.ClassCastException : 생성 된 인터페이스 문제로 캐스트?

분류에서Dev

동일한 인터페이스에서 상속 된 클래스로 구조체 캐스팅

분류에서Dev

파생 된 속성으로 인터페이스 구현

분류에서Dev

클래스 객체를 잘못된 유형으로 초기화

분류에서Dev

인터페이스를 필드 유형으로 사용하지만 기본 클래스가 파생 된 구조체를 선택하도록합니다.

분류에서Dev

유형을 상속하는 객체 목록을 새로운 인터페이스 유형 목록으로 캐스팅

분류에서Dev

Swift : NSObject를 다른 유형의 UI 객체로 캐스팅

분류에서Dev

인터페이스-클래스를 기반으로 객체를 생성하기 위해 인터페이스를 상속하는 클래스 등록

분류에서Dev

Relections 라이브러리에서 생성 된 객체를 캐스팅 할 때 클래스 캐스팅 예외

분류에서Dev

인터페이스 제네릭의 개체로 C # 캐스팅

분류에서Dev

활동 컨텍스트를 인터페이스로 캐스팅하면 ClassCastException이 발생합니다.

분류에서Dev

인터페이스를 결합하여 속성의 결합으로 새 유형 생성

분류에서Dev

for in 루프의 키를 인터페이스의 속성으로 캐스팅 할 수 있습니까?

분류에서Dev

인터페이스로 직렬화 해제 된 캐스트 개체를 원래 유형으로 되돌립니다.

분류에서Dev

유효성 검사에서 " 'BaseModel'유형의 개체를 'DerivedModel'유형으로 캐스팅 할 수 없습니다."가 발생합니다.

분류에서Dev

SQLite에서 생성 된 목록보기로 목록 캐스팅

Related 관련 기사

  1. 1

    Sys.time ()으로 생성 된 캐스팅 객체

  2. 2

    인터페이스를 객체 유형으로 변경

  3. 3

    인터페이스로 객체 다운 캐스팅

  4. 4

    TypeScript : 인터페이스에서 동적으로 공용체 유형 생성

  5. 5

    Javascript 익명 객체를 유형이 지정된 객체로 캐스팅 할 수 있습니까? 어떻게?

  6. 6

    객체로 인터페이스를 확장하여 객체 소품이 인터페이스 프로토 타입에 병합 된 새 인터페이스를 생성하는 방법은 무엇입니까?

  7. 7

    Linq 표현식에서 일반 인터페이스 유형으로 객체 캐스팅

  8. 8

    객체 인 제네릭 클래스를 유형으로 캐스팅

  9. 9

    인터페이스를 구체적인 유형으로 캐스팅하는 방법

  10. 10

    객체를 '실제'유형으로 일반적으로 캐스팅

  11. 11

    COM 개체를 인터페이스로 강제 캐스팅

  12. 12

    포인터 벡터에서 기본 형식으로 파생 된 형식으로 캐스팅 된 파생 형식의 첫 번째 요소를 반환합니다.

  13. 13

    인터페이스를 제네릭 유형으로 사용할 때 잘못된 캐스트 예외

  14. 14

    java.lang.ClassCastException : 생성 된 인터페이스 문제로 캐스트?

  15. 15

    동일한 인터페이스에서 상속 된 클래스로 구조체 캐스팅

  16. 16

    파생 된 속성으로 인터페이스 구현

  17. 17

    클래스 객체를 잘못된 유형으로 초기화

  18. 18

    인터페이스를 필드 유형으로 사용하지만 기본 클래스가 파생 된 구조체를 선택하도록합니다.

  19. 19

    유형을 상속하는 객체 목록을 새로운 인터페이스 유형 목록으로 캐스팅

  20. 20

    Swift : NSObject를 다른 유형의 UI 객체로 캐스팅

  21. 21

    인터페이스-클래스를 기반으로 객체를 생성하기 위해 인터페이스를 상속하는 클래스 등록

  22. 22

    Relections 라이브러리에서 생성 된 객체를 캐스팅 할 때 클래스 캐스팅 예외

  23. 23

    인터페이스 제네릭의 개체로 C # 캐스팅

  24. 24

    활동 컨텍스트를 인터페이스로 캐스팅하면 ClassCastException이 발생합니다.

  25. 25

    인터페이스를 결합하여 속성의 결합으로 새 유형 생성

  26. 26

    for in 루프의 키를 인터페이스의 속성으로 캐스팅 할 수 있습니까?

  27. 27

    인터페이스로 직렬화 해제 된 캐스트 개체를 원래 유형으로 되돌립니다.

  28. 28

    유효성 검사에서 " 'BaseModel'유형의 개체를 'DerivedModel'유형으로 캐스팅 할 수 없습니다."가 발생합니다.

  29. 29

    SQLite에서 생성 된 목록보기로 목록 캐스팅

뜨겁다태그

보관