programing

JRebel의 대체 수단 재배포

itsource 2022. 7. 29. 23:34
반응형

JRebel의 대체 수단 재배포

JRebel을 사용하면 응용 프로그램을 재시작하지 않고 새로 컴파일된 코드를 재배치할 수 있습니다.(무료?) 다른 방법이 없을까요?FAQ 페이지에서 질문에 답하고 있습니다만, JRebel에 치우쳐 있는 것은 확실합니다.이 질문은 1년 전에 이 사이트에서 했던 질문입니다만, 새로운 정보를 가지고 계신 분이 없는지 다시 한번 말씀드립니다.

덧붙여서 JRebel을 매우 좋아합니다만, 무료가 있으면 시도해 보고 싶습니다.

한 가지 덧붙여서, 저는 오픈 소스 프로젝트를 진행하고 있는데, 오픈 소스 프로젝트에 참가하고 있다는 것을 증명할 수 있는 사람에게 1년간의 라이선스를 무료로 제공하고 있습니다.(www.kuali.org)은 저에게 매우 효과적이지만, 저는 그 프로젝트에 계속 참여하지는 않을 것입니다.

DCEVM은 실행 시 클래스를 무제한으로 재정의할 수 있도록 HotSpot VM을 수정한 것입니다.필드 및 메서드를 추가/제거하고 런타임에 클래스의 슈퍼 유형을 변경할 수 있습니다.

원래 사이트에서 사용할 수 있는 바이너리는 Java 6u25 및 Java 7의 이전 버전으로 제한됩니다.이 프로젝트는 Github에서 분기되었으며 Java 7과 8의 최신 버전을 지원합니다.유지보수는 윈도우즈/Linux에서 32/64비트 VM의 바이너리를 제공합니다.Java 11을 시작으로 프로젝트는 새로운 GitHub 저장소로 이동하였고, 현재는 OS X용 바이너리도 제공하고 있습니다.

및 되며 DCEVM ian Debian unt Ubuntu d d d d d with with with with with with with with d with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with with withjava -dcevm 달라집니다.

Hotswap Agent는 많은 Java 프레임워크(Spring bean 정의 새로고침, 휴지 상태 엔티티 매핑, 로거 레벨 설정 등)를 지원하는 DCEVM의 확장입니다.

또한 Java 1.7용 DCEVM 및 컴파일된 바이너리를 설정하는 방법에 대한 문서도 많이 있습니다.

DCEVM은 강화된 클래스 정의를 지원하며 현재 JDK7 및 JDK8에서 사용할 수 있습니다.

https://github.com/dcevm/dcevm/releases

HotswapAgent는 무료 JRebel 대안으로 다양한 프레임워크에서 DCEVM을 지원합니다.

http://hotswapagent.org/

By Spring guys는 Grails 새로고침에 사용되지만 Java에서도 작동합니다.

https://github.com/SpringSource/spring-loaded

DCEVM에 대한 기사를 썼습니다: Spring-mvc + Velocity + DCEVM

제 환경은 문제없이 돌아가고 있기 때문에 그럴 가치가 있다고 생각합니다.

저는 핫 스왑 이상의 클래스를 핫 치환할 수 있는 오픈 소스 프로젝트를 진행하고 있습니다.https://github.com/fakereplace/fakereplace

도움이 될 수도 있고 안 될 수도 있지만 어떤 피드백이라도 감사합니다.

다음 내용을 확인해 보십시오.

HotSwap 지원: Java HotSpot VM의 객체 지향 아키텍처를 통해 즉시 클래스 재정의(HotSwap)와 같은 고급 기능을 사용할 수 있습니다.이 기능은 실행 중인 응용 프로그램에서 디버거 API를 통해 수정된 코드를 대체하는 기능을 제공합니다.HotSwap은 Java Platform Debugger Architecture에 기능을 추가하여 디버거의 제어 하에 실행 중에 클래스를 업데이트할 수 있도록 합니다.또한 프로파일링 코드가 삽입된 메서드 버전에서 핫스왑을 통해 프로파일링 작업을 수행할 수도 있습니다.

현재로서는 응용 프로그램을 재시작하지 않고 새로 컴파일된 메서드 본문만 재배포할 수 있습니다.디버거를 사용하여 실행하기만 하면 됩니다.이클립스에서 해봤는데 아주 잘 작동하더라고요.

또, Emmanuel Bourg가 회답(JEP 159)에서 언급했듯이, 슈퍼 타입의 추가와 방법이나 필드의 추가와 삭제에 대한 지원이 있을 것으로 기대된다.

참조: Java 화이트페이퍼 135217: 신뢰성, 가용성보수성

JRebel은 무료입니다.사지 마세요."구입" 페이지에서 "공짜" 옵션(옵션 버튼)을 선택합니다.그런 다음 "소셜"을 선택합니다.가입 후, JRebel 라이센스 키가 완전하게 기능합니다.그런 다음 JRebel을 다운로드하거나 IDE 내장 버전의 키를 사용할 수 있습니다.그 캐치(네, 캐치)는, FB 타임 라인이나 Twitter 어카운트에 한 달에 한 번, 고객을 대신해 투고(광고)할 수 있도록 해야 합니다.나는 그들에게 내 트위터 계정을 줬어. 별거 아니야. 난 절대 그것을 사용하지 않아. 그리고 내가 아는 누구도 실제로 그것을 사용하지 않아.그러니까 260달러나 아끼세요.

언급URL : https://stackoverflow.com/questions/7998669/redeploy-alternatives-to-jrebel

반응형