ext
폴더에 다른 버전의 jar가 있다고 가정하고 다른 버전은 classpath
입니다. 항아리가로드 될 버전은 무엇입니까? 내 연구에 따르면 extension classloader
은 classpath
보다 먼저 실행되므로 확장 프로그램의 라이브러리가로드됩니다. 또는 classpath
으로 우선 적용됩니다. 버전이 동일하면 어떻게 될까요?JVM에로드 할 항아리는 무엇입니까?
1
A
답변
1
ClassLoader
의 계층에서 찾을 수있는 첫 번째 클래스를 사용합니다. 부트 스트랩 ClassLoader
이 (jre/lib
에 rt.jar
및 여러 가지 다른 중요한 jar
파일)을 부트 스트랩 클래스의를 구성
- :
그래서
ClassLoader
의의 다음 순서에서 클래스를 얻기 위해 노력할 것입니다 . - 확장
ClassLoader
확장 클래스 (확장 폴더jre/lib/ext
jar
의 파일)로 구성. ClassLoader
사용자 클래스 (클래스 경로에 정의 된 클래스가 정의 됨)로 구성됩니다.
클래스가 # 1에서 # 2 및 # 3으로 정의되지 않았으므로 찾을 수있는 첫 번째 클래스는 # 2에 있으므로 확장 폴더의 버전이 표시되고 무시됩니다 나중에 classpath에 정의 된 클래스.
그것은 클래스 레벨이 아닌 항아리 수준이 될 것이다 또한 How Classes are Found
1
참조하십시오. 클래스 (정규화 된 클래스 이름)가 이미 VM에로드 된 경우 ext 또는 클래스 경로 libs 클래스의 새 클래스는 무시됩니다.
관련 문제
- 1. Spring-MVC에만 필요한 항아리는 무엇입니까?
- 2. Datanucleus JDO - 필요한 항아리는 무엇입니까?
- 3. 클래스 파일의 여러 버전을 JVM에로드
- 4. ORM 라이브러리 항아리는 'sessionFactory에'
- 5. 가져온 항아리는 어떻게 사용합니까?
- 6. BoneCP에 필요한 SLF4 로깅 항아리는 무엇입니까?
- 7. 64 비트 dll을 32 비트 JVM에로드 할 수 있습니까?
- 8. 이 상황에서 항아리는 어디에서 적재됩니까?
- 9. 최종 항아리는 무엇에 의존하고 있습니까?
- 10. 인터페이스 HttpSessionListener의 항아리는 어느 것입니까?
- 11. Launch4j를 사용하면 항아리는 언제 포장해야합니까?
- 12. JasperReports를 실행하려면 응용 프로그램과 함께 제공해야하는 특정 항아리는 무엇입니까?
- 13. 서명 애플릿 항아리는 여전히 일부 명령
- 14. 출판 단지 모두와 소스 항아리는 여기 Gradle을
- 15. 축 클라이언트 항아리는 6.1 공유 응용 프로그램입니다.
- 16. eclipse-collections 소스 항아리는 어디에 있습니까?
- 17. 클래스를 찾을 수 없습니다 예외 항아리는
- 18. JavaFX 항아리는 .properties 파일을 읽지 않습니다
- 19. import org.apache.axis.message.MessageElement를 찾을 수 없습니까? 이 항아리를 수입 할 항아리는 무엇입니까?
- 20. 이미 런타임에 대상 jvm에로드 된 에이전트를 다시 사용하는 방법
- 21. 내 항아리는 어디에 둘 수 있습니까? Ear with Jboss 5.1
- 22. 전이 의존성 항아리는 maven 넥서스 저장소에서 해결되지 않았습니다
- 23. Intellij 14에서 "프로젝트 만들기"를 실행하여 스칼라 프로젝트를 수행 할 때 항아리는 어디에 있습니까?
- 24. 컴파일 된 코드가 DVM에로드 될 때 DVM은 메모리를 어떻게 관리합니까? 자바 바이트 코드는 JVM에로드 될 때
- 25. Slick - 첫 번째 예 - "데이터베이스"패키지가 들어있는 항아리는 어디서 구할 수 있습니까?
- 26. "lib에 WEB-INF /"를 표시하지 않습니다은 System.getProperty ("java.class.path를")와 포함 항아리는
- 27. JVM이 첨부 API를 통해로드 된 에이전트 목록을 검색 할 수 있습니까?
- 28. NSSM을 사용하여 Java 서비스를 만들면 COM 인터페이스에 액세스 할 때 문제가 발생합니다.
- 29. java 서비스를 초기화 할 수 없습니다 (디버깅 도움말)
- 30. 마샬링해야 할 것은 무엇입니까?