JavaRebel 1.0 나왔네요.
참조 : http://www.theserverside.com/news/thread.tss?thread_id=47771, http://www.zeroturnaround.com/javarebel/features/
웹 서버를 다시 배포하지 않아도 클래스의 변경 사항을 다시 로딩줍니다.
"변경 사항"이라는 것을 자세히 보면 다음과 같습니다.
# Changing, adding and removing class/interface methods
# Changing, adding and removing class fields
# Changing, adding and removing class constructors
# Overriding existing methods
# Creating new classes or renaming old ones (as long as some other class superclass doesn’t change)
# Changing method parameter or return types or field type without changing its name
# Changing, adding and removing class/interface constant fields is supported, but will not get reinitialized and thus is only useful for primitive types and Strings
# Changing, adding and removing class fields
# Changing, adding and removing class constructors
# Overriding existing methods
# Creating new classes or renaming old ones (as long as some other class superclass doesn’t change)
# Changing method parameter or return types or field type without changing its name
# Changing, adding and removing class/interface constant fields is supported, but will not get reinitialized and thus is only useful for primitive types and Strings
Java 실행 할때 "-noverify -javaagent:javarebel.jar" 이 옵션을 주면 된다고 합니다. javaagent라는 옵션 참.. 익숙한데, @Configurable 사용할 때 애먹었던 옵션이네요. 이 옵션을 여러번 사용할 수 있는지 궁금해 집니다.
5분짜리 동영상으로 동작하는 모습을 확인할 수 있습니다.
아.. 상용툴입니다. 하지만 OSS License를 가지고 있는 오픈 소스 개발을 하고 있다면, 무료 라이선스를 준다고합니다.