Apidays New York 2024 - The value of a flexible API Management solution for O...
LatJUG-0311.JRebel-dev2dev
1.
2. Part I How much of your coding time is spent coding? Seen this before? Also: “My app is…” * Building * Redeploying * Restarting… http://xkcd.com/303/
4. Redeploying sucks, so JRebeleliminates it. How? “ JRebel maps your project workspace directly to the application under development. When you change any class or resource in your IDE, the change is immediately reflected in the application, skipping the build and redeploy phases. ” Umm… What?
5. JRebel picks up changes to:A) Class structure …monitors the timestamp of classfiles.. …and reflects those changes in your application, instantly
6. JRebel picks up changes to:B) Framework configurations Frameworks and others... …and reflects those changes in your application, instantly
7. JRebel picks up changes to:C) Java EE technologies …and reflects those changes in… well, you get the point… .. .. ..but HOW??
17. Specially for JUG Latvia! Free JRebel license for 60days with Enterprise Add-on http://www.zeroturnaround.com/jrebel/giveaways/?campaign=juglatvia032011
- What is JRebel - Tool from ZeroTurnaround - Maps your app directly to the workspace to skip builds - Reloads class change instantly - Propagates configuration changes - Avoids 95% of builds & redeploys in development- Illustration - Screenshot illustration best? - Suggest quick demo!- Comparison - Don't focus on class reloading! - Is HotSwap important anymore?
- How does it work: Classes: - JRebel integrates with JVM and rewrites each class to split its state and behaviour - JRebel versions each class individually, instead of an application/module at a time - Does not use classloaders! - Changes to classes always visible in Reflection API -> Versioning graphic
- How does it work: Configuration changes - JRebel integrates directly with application servers and frameworks to propagate configuration changes from the changed classes and resources - Annotation changes are always visible in Reflection API - JRebel provides an extensible SDK to allow contributions from third parties, Stripes, Struts 2, Wicket and several other integrations have been contributed
- How does it work: Workspace mapping - JRebel integrates with application servers, frameworks and the IDE - When a class or resource is being looked up, JRebel redirects directly to the workspace - When an HTTP resource needs to be serves, JRebel serves it from the workspace -> Mapping graphic!
- How does it work: Configuration changes - JRebel integrates directly with application servers and frameworks to propagate configuration changes from the changed classes and resources - Annotation changes are always visible in Reflection API - JRebel provides an extensible SDK to allow contributions from third parties, Stripes, Struts 2, Wicket and several other integrations have been contributed
- What is JRebel - Tool from ZeroTurnaround - Maps your app directly to the workspace to skip builds - Reloads class change instantly - Propagates configuration changes - Avoids 95% of builds & redeploys in development- Illustration - Screenshot illustration best? - Suggest quick demo!- Comparison - Don't focus on class reloading! - Is HotSwap important anymore?