JREBEL FOR ECLIPSE ECLIPSE DAY CHINA 2013. PRESENTER ANTON PRODUCT MANAGER.

Slides:



Advertisements
Similar presentations
Extending Eclipse CDT for Remote Target Debugging Thomas Fletcher Director, Automotive Engineering Services QNX Software Systems.
Advertisements

Copyright ©2010 Oracle Corporation Made available under Creative Commons Attribution-Share Alike 3.0 Unported EclipseLink Runtime Architecture Data Source.
Extending Eclipse Kai-Uwe Mätzel IBM OTI Labs Zurich
Leuven, 13 oktober 2005 agenda Inleiding en stand van zaken Demo 1: Instant messaging applied to a meeting  WP2 (code generatie), WP4 (context + service.
ACT! “Web” Plugins ACC Webinar (Part 1of 2) Brian Mowka and Jamie Aurand December 2010.
P2 in the Enterprise David DoddDavid Dodd, Emac ShenEmac Shen.
Internetteknologi (ITNET1) Extra Presentation Java IDE Tool Support.
Do you really get class loaders? Jevgeni Kabanov Founder & CTO of ZeroTurnaround.
Finding Class Loader Leaks in Java Applications Jevgeni Kabanov.
My First Building Block Presented By Tracy Engwirda 28 September, 2005.
Filip Debelić What is it? Android is a mobile operating system (OS) based on the Linux kernel and currently developed by Google Android,
Android: Hello World Frank Xu Gannon University. Steps Configuration ▫Android SDK ▫Android Development Tools (ADT)  Eclipse plug-in ▫Android SDK and.
27-Jun-15 Rails. What is Rails? Rails is a framework for building web applications This involves: Getting information from the user (client), using HTML.
Hello Vaadin! CS 3130 Summer 2015.
© 2006 by IBM 1 How to use Eclipse to Build Rich Internet Applications With PHP and AJAX Phil Berkland IBM Software Group Emerging.
Spring Roo CS476 Aleksey Bukin Peter Lew. What is Roo? Productivity tool Allows for easy creation of Enterprise Java applications Runs alongside existing.
© Blackboard, Inc. All rights reserved. Developing Blackboard Building Blocks: Getting Started John Knight Senior Engineer Blackboard Inc. July 18 th.
Extending Cocos2D-x Mobile 2D Framework Rony Xu Happy Elements.
JavaServer Faces: The Fundamentals Compiled from Sun TechDays workshops (JSF Basics, Web-Tier Codecamp: JavaServer Faces, Java Studio Creator; IBM RAD)
Spring Overview, Application demo -Midhila Paineni 09/23/2011 Spring Overview, Application demo9/8/20151.
Maven & Bamboo CONTINUOUS INTEGRATION. QA in a large organization In a large organization that manages over 100 applications and over 20 developers, implementing.
MAVEN-BLUEMARTINI Yannick Robin. What is maven-bluemartini?  maven-bluemartini is Maven archetypes for Blue Martini projects  Open source project on.
SSC2: Web Services. Web Services Web Services offer interoperability using the web Web Services provide information on the operations they can perform.
Students: Avner Barr, Eitan Vadergorn Supervisor: Rami Mankevich Lecturer in Charge: Chaim Gotsman.
AUTOBUILD Build and Deployment Automation Solution.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
Web Services An introduction for eWiSACWIS May 2008.
Tom Castiglia Hershey Technologies
Plug-in Development Environment. Session Outline Tools Installation Configuration New Project Basic Debugging Remote Debugging.
Open Service Gateway Initiative (OSGi) Reporter : 林學灝 侯承育 1.
Android Development Environment Environment/tools Windows Eclipse IDE for Java Developers (v3.5 Galileo) Java Platform (JDK 6 Update 18) Android.
Topic Java EE installation (Eclipse, glassfish, etc.) Eclipse configuration for EE Creating a Java Web Dynamic Project Creating your first servlet.
Sonic EventMonitor Monitoring your Sonic environment Tako Grijpma Progaia Resource Solutions 09 november 2006.
1 PUPPET AND DSC. INTRODUCTION AND USAGE IN CONTINUOUS DELIVERY PROCESS. VIKTAR VEDMICH PAVEL PESETSKIY AUGUST 1, 2015.
07/10/2007 VDCT Status Update EPICS Collaboration, October 2007 Knoxville, Tennessee
Katari Globant 2008 (update to 2010). Katari  Katari is a framework to use as a starting point to develop new web applications.  Incorporates architecture,
XmlBlackBox The presentation Alexander Crea June the 15st 2010 The presentation Alexander Crea June the 15st 2010
Getting Started with the Open Services Gateway Initiative (OSGi) CNT 5517 Dr. Sumi Helal, Ph.D. Professor Computer & Information Science & Engineering.
Devanshu Bawa Customization Specialist Logo Business Solutions.
Applications Manager Web Transaction Monitoring. Agenda APM Insight Benefits Apdex Scores APM Insight Architecture Agent Deployment Agent Configuration.
Creating Zotero Flows Data-Intensive Technologies and Applications, National Center for Supercomputing Applications, University of Illinois at Urbana-Champaign.
Steps to integrate XML How does XML processing work? Simple uses of passive DOM objects Adding behaviour to information A converter and translator subsystem.
NetChat Communications Systems Steven Fuqua Barnett Trzcinski Andy Street.
Loader Tutorial Set Up. Requirements Java 7 Eclipse IvyIDE plugin Git Optional: Ant Maven.
Impala A dynamic module framework for Java web development Phil Zoio Realsolve Solutions Devoxx 12 December, 2008.
Presented By:. What is JavaHelp: Most software developers do not look forward to spending time documenting and explaining their product. JavaSoft has.
Plug-In Architecture Pattern. Problem The functionality of a system needs to be extended after the software is shipped The set of possible post-shipment.
Ajax! Ajax Programming Ajax! Ajax Programming. Ajax! Ajax Programming Take a look at a typical desktop application (Spreadsheet app, etc.) The program.
Google Code Libraries Dima Ionut Daniel. Contents What is Google Code? LDAPBeans Object-ldap-mapping Ldap-ODM Bug4j jOOR Rapa jongo Conclusion Bibliography.
Google App Engine using Java 1. Outline Getting started Guestbook example Todo example Simplified Madlib 2.
Copyright © 2010 Accenture All Rights Reserved. Accenture, its logo, and High Performance Delivered are trademarks of Accenture. ODS Tools – Fannie Mae.
JavaFX on Mobile and Embedded: Status and Future Plans
Google App Engine using Java 1. Outline Getting started Guestbook example Todo example Simplified Madlib 2.
Windows App Studio Windows App Studio is the tool that makes it fast and easy to build Windows 10 apps. It’s accessible from any device with a browser.
NetBeans Rich Client Platform Alex Kotchnev Software Developer Commerce Technologies Inc. Alex Kotchnev Software Developer Commerce Technologies Inc.
JMaki, Phobos Ludovic Champenois Sun Microsystems Tools story February 23, 2007.
當 Java 遇上 DevOps 黃忠成. Java In Azure Storage Table Storage Services NoSQL base storage Fast and Easy to use Blob Storage Services File Storage (photo,
Featured Enhancements to the IDE & Debugger
Self Healing and Dynamic Construction Framework:
Sakai WebApp Structure
WEB API.
Ebusiness Infrastructure Platform
ESIS Consulting LLC (C) ESIS Consulting LLC. All rights reserved
JavaServer Faces: The Fundamentals
The JSF Tools Project – WTP (internal) release review
Java Code Coverage Tools - EclEmma and JaCoCo
Java Code Review with CheckStyle
Plug-In Architecture Pattern
Presentation transcript:

JREBEL FOR ECLIPSE ECLIPSE DAY CHINA 2013

PRESENTER ANTON PRODUCT MANAGER

BASED ON JAVAAGENT TECHNOLOGY DISTRIBUTED AS IDE PLUGIN Eclipse, incl. MyEclipse, RAD, etc Also: IntelliJ IDEA, NetBeans, JDeveloper A PRODUCTIVITY TOOL FOR JAVA DEVELOPERS

THE TURNAROUND MAKE CHANGES MAKE CHANGES BUILD, DEPLOY, WAIT OBSERVE RESULTS AVERAGE: 2.5 min

THE TURNAROUND MAKE CHANGES MAKE CHANGES BUILD, DEPLOY, WAIT OBSERVE RESULTS NO BUILD! NO REDEPLOY! NO WAITING!

~1 min30 sec – 30 min1-60 sec IN-APPLICATION NAVIGATION APPLICATION STARTUP SERVER STARTUP WASTED TIME

HOW TO RELOAD A CLASS? Old Class Loader MyClass MyObject New Class Loader MyClass’ MyObject TRANSFER THE STATE

Classes Libraries OldClassLoader NewClassLoader Sevlet New Classes New Libraries Sevlet Session init() App State serialize/deserialize THIS IS WHAT EVERY APPLICATION SERVER DOES

Classes OldClassLoader NewClassLoader Sevlet New Classes New Libraries Sevlet Session App State CLASS LOADERS ARE EASY TO LEAK!

THE REALITY: CLASS LOADERS ARE NOT GOOD FOR RELOADING CLASSES

MyObject MyObject.class OldClassL oad er Code Debugger HotSwap New code New code HotSwap Make changes

JRebel vs HotSwap HotSwapJRebel Changing method bodies ++ Adding/removing methods -+ Adding/removing constructors -+ Adding/removing fields -+ Adding/removing classes -+ Adding/removing annotations -+ Replacing superclass * -- Adding/removing implemented interfaces * --

Maybe one day Java gets a better HotSwap: – JEP 159: Enhanced Class Redefinition But class reloading is not enough for real applications!

MyObject MyObject.class OldClassL oad er Code New code JRebel Framework Configuration (XML, annotations,..) JRebel Make changes

JRebel does NOT create new class loaders to update classes!

DEMO TIME!

GET AT ECLIPSE MARKETPLACE

ADD JREBEL NATURE

ENABLE JREBEL AGENT

JREBEL CONFIG CENTER

By starting the container you will see JRebel messages like below

REBEL.XML JRebel monitors directories specified in rebel.xml

INSTANT CLASS RELOADING JRebel reloads only what’s changed

FRAMEWORK CONFIGURATIONS JRebel understands framework configuration files