IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

L'outil JRebel, anciennement JavaRebel, est disponible en version 2.1
Avec un meilleur support de Struts 1.x/2.x

Le , par Ricky81

31PARTAGES

0  0 
Bonsoir,

Une fois le renommage de JavaRebel en JRebel passé (trademark Java quand tu nous tiens), les équipes de ZeroTurnaround n'en ont pour autant pas oublié d'améliorer le produit.

La nouvelle release 2.1 se focalise essentiellement sur les 2 version majeures de Struts, avec :
  • un nouveau plugin pour Struts 1.x
  • la mise à jour du plugin Struts 2.x


Dans les deux cas, JRebel permet désormais la prise en compte à chaud des modifications du mapping des classes Action (mapping XML ou par annotations).

En complément, on notera également :
  • support de GlassFish v3 et du conteneur OSGi Felix sur lequel ce dernier repose
  • l'envoi de statistiques anonymes d'utilisation de JRebel vers la base centralisée de l'éditeur (possibilité de le désactiver), afin de permettre à ce dernier d'avoir une meilleure visibilité sur les besoins et d'adapter sa roadmap
  • correction de divers bugs
  • renommage de javarebel.jar en jrebel.jar


Petit rappel de ce qu'est JRebel :

L'outil JRebel permet d'améliorer la productivité du développement Java. Il se présente sous la forme d'un agent pour la JVM qui permet le remplacement à chaud du bytecode des classes de l'application. Par conséquent, une grande partie des modifications de code peut être prise en compte par l'application sans nécessiter de redémarrer cette dernière.
Utilisez vous JRebel au quotidien ? Sauriez vous quantifier le gain de temps qu'il vous apporte en modifiant à la volée le bytecode pour les classes que vous modifiez ?

La page de présentation de JRebel
Téléchargez la dernière version gratuite
Matrice de comparaison avec/sans JRebel

Source

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de djo.mos
Expert éminent https://www.developpez.com
Le 08/10/2009 à 12:28
Citation Envoyé par Ricky81 Voir le message

Utilisez vous JRebel au quotidien ? Sauriez vous quantifier le gain de temps qu'il vous apporte en modifiant à la volée le bytecode pour les classes que vous modifiez ?
Oui, et non. Oui j'utilise JRebel au quotidien, et non, je ne saurais quantifier le temps qu'il me fait gagner tellement c'est beaucoup

Plus sérieusement, voici quelques use-cases de JRebel (en ce qui me concerne) :

- Je l'utilise sur le développement d'un serveur métier en OSGi (à base d'equinox), et le hot reloading marche avec equinox depuis longtemps déjà
- Je l'utilise sur le développement d'applications Eclipse RCP. Là où j'ai fréquemment besoin de jouer sur les vues et éditeurs, en tweakant le layout, l'intitulé des labels, l'ajout de composants, etc. Au lieu de relancer tout l'applpication pour voir ce genre de modifs, je ne fais que fermer et réouvrir la vue ou l'éditeur (ou la page de préférences), et hop.
- Je l'utilise sur le développement d'applications Web avec Wicket. Wicket étant basé sur Java principalement, et offrant lui même des mécanismes pour recharger régulièrement les fichiers de ressources (properties, html, css), voir une modif qu'on vient de faire revient à un simple F5 sur le navigateur, à la PHP quoi

Bon, d'un autre part, JRebel ne gère pas tous les changements qu'on peut effectuer, genre si on modifie la classe parente ou les interfaces implémentés, ou encore si on ajoute/modifie un champ static final.

De plus, de temps en temps (plutôt rarement, mais ça arrive), JRebel déconne parfois lors du rechargement ce qui peut conduire à un comportement bizarre de l'application.

Dans le cas d'OSGi, JRebel ne supporte pas les changements qu'on effectue sur le manifest.

Mais dans l'ensemble, je ne peux plus considérer un développement Java sérieux sans JRebel dans la boite à outils.

P.S.: Je n'ai aucune affiliation avec ZeroTurnaround, et je n'essais pas de leur faire de la pub gratuitement : c'est juste que j'apprécie beacoup leur produit qui se trouve être payant. Je suis plutôt proponent des alternatives Opensource, mais je n'en trouve pas dans ce cas-ci.
0  0 
Avatar de Baptiste Wicht
Expert éminent sénior https://www.developpez.com
Le 15/10/2009 à 8:52
J'aurais une question pour ceux qui utilisent JRebel : Est-ce que JRebel supporte le reloading d'un Jar complet ?

Je travaille sur une application modulaire, je dois générer le jar d'un projet pour déployer un module, est-ce que JRebel peut remplacer un Jar par un autre ?

Seul le core est éxécuté directement sans passer par un Jar.
0  0