저는 Java로 프로그래밍을 해왔으며, Netbeans 및 다른 IDE에서이 기능을 사용하여 디버깅 중에 프로그램을 다시 시작할 필요없이 변경할 수 있습니다. Java를 다시 시작하지 않고 즉시 업데이트 할 수 있다면 Java로 응용 프로그램을 작성하고 있습니다. 업데이트 할 때 실행할 수있는 두 번째 항아리가 있어야한다는 생각이 들었습니다. IDE가하는 것과 똑같은 일을 할 수는 있었지만, 코드를 어떻게 바꿀 수 있는지 전혀 모르겠습니다. 누구나 나를 계몽시킬 수 있습니까? 고맙습니다!핫 코드 교환 작동 방법
5
A
답변
3
디버깅이 JDI (Java 디버그 인터페이스)를 사용하는 경우 Eclipse와 같은 IDE. Java API의 모음으로 외부 Java 가상 머신을 만들고 연결할 수 있습니다. 이는 가상 시스템에서 클래스를 재정의하는 데 사용할 수있는 Java Agent와 함께 사용할 수 있습니다. 디버그 모드에서 Eclipse가 수행하는 작업은 코드가 실행되는 새로운 가상 머신을 만드는 것입니다. 편집하고 다시 컴파일 할 때; eclipse는 새로운 바이트 코드를 전송하여 변경된 클래스를 다시 정의하도록 JVM에 지시합니다.
JDI documentation을 읽고 특히 클래스 변환기를 구성하는 데 사용되는 Java instrument class을 살펴볼 수 있습니다. setting up a JDI launcher (새 JVM 시작)에 대한 관련 질문이 있습니다.
1
저는 실제로 오늘 같은 일에 대해 배우고있었습니다. 내가 읽고 생각 하는데요
http://java.dzone.com/articles/5-jrebel-features-you-couldn%E2%80%99t
관련 문제
- 1. haskell에서로드하는 핫 코드
- 2. 핫 코드 대체 실패
- 3. 얼랭의 코드 핫 스왑
- 4. Eclipse에서 자바 코드 핫 스와핑을 사용하는 방법
- 5. intellij에서 Groovy 핫 스왑을 작동 시키려면 어떻게합니까?
- 6. ODOO 8 - 핫 코드 푸시
- 7. Nativescript 핫 리로드 JS 코드
- 8. cordova 핫 코드 푸시 플러그인 보안
- 9. 핫 스팟
- 10. 교환 방법
- 11. Slick2D의 핫 스왑 렌더링 방법
- 12. Meteor 핫 코드 푸시에서 파일 입력을 보존 할 수 있습니까?
- 13. 콧수염 템플릿 : 방법 다음 코드 (*)가 작동
- 14. 안드로이드에 Qt 코드 포팅 및 작동 방법
- 15. 유성 핫 코드 푸시 용 레이아웃/템플릿
- 16. 핫 스와핑 파이썬 코드 (오리 형 기능?)
- 17. Erlang 핫 코드 스와핑과 인터프리터 언어
- 18. Eclipse에서 핫 코드 대체를 비활성화하려면 어떻게합니까?
- 19. 고급 코드 JDK 8의 핫 스와핑?
- 20. Eclipse 핫 코드 대체가 작동하지 않습니다.
- 21. C#의 Java와 같은 핫 스와핑 코드
- 22. "LightTable"샘플 코드 작동
- 23. 핫 리로드가 핫 리로드하지 않음
- 24. 지도에서 키 교환 방법?
- 25. Gmail 주소록을 가져 오기위한 토큰 코드 교환 방법
- 26. 이미지의 핫 스폿을 만드는 방법
- 27. JBoss에서 클래스를 핫 리로드하는 방법
- 28. inteliJ에서 핫 스왑을 활성화하는 방법
- 29. UITableView 이미지 교환 위치 교환
- 30. JVM 핫 스왑 비활성화
[이] (http://stackoverflow.com/questions/7989135/is : 나는 더 복잡한 hotpush의 경우 몇 뒤에 흐름을 이해하는데이 문서가 꽤 도움이되었다고합니다 - 가능한 - 프로그래밍 방식으로 컴파일 - java-source-code-in-memory-only). 받아 들여진 응답의 어느 쪽이든이 아마도 당신의 필요에 부합 할 것입니다. – ChiefTwoPencils
JDWP, 특히 [JDI] (http://docs.oracle.com/javase/7/docs/technotes/guides/jpda/architecture.html#jdi)를 살펴보십시오. –