This website uses cookies for visitor traffic analysis. By using the website, you agree with storing the cookies on your computer.More information

Application development without restarts

Some months ago, I read an interesting article about Javeleon. I thought it would be very useful for JVx developers because it is possible to start an application, modify screens and lifecycle objects and use the new instances live in the application without restarting it. It could save a lot of development time. Use the JRebel ROI calculator to see what you can save - It is amazing.

The integration of Javeleon in the JVx development process is very simple. Go to the Javeleon Download Page and download the standalone version 1.5 or 2.0 beta. It is not necessary to add javeleon.jar to the classpath of your application. If you use Eclipse, open the Run configuration dialog and add the following VM arguments:

-Djava.io.tmpdir=D:\temp\java
-Xbootclasspath/p:"D:\temp\java\JaveleonBoot\default"
-javaagent:D:\libs\javeleon\javeleon.jar=nbjdk=default;profile=java

If you use version 1.5 and version 2.0 for your tests, be sure that you delete the D:\temp\java\JaveleonBoot directory. Otherwise you get JVM startup Exceptions.

After the first start, watch the Java Console view because Javeleon is disabled until you request and download a license. Don't be affraid because the license is used to keep track of how many users Javeleon has. Details about the license are available here. With a valid license, it is possible to start development.

If everything is setup correctly, start your application and open a work-screen. Go back to Eclipse and modify the source-code of your work-screen, e.g. change the Layout, change the text of a Label or change some properties of a DBStorage. Be sure that your source is compiled (should be the default Eclipse setting) before you go back to your application. To see the changes in your application, simply close and open the modified work-screen.
You save the time to restart your application and perform a login. The MetaData cache also saves some seconds.

One negative point is that you need JVx as project dependency instead of the jar version.

Update

It is possible to use Javeleon without JVx project dependency. Simply unzip jvx.jar and add the created folder (class folder) to your classpath. It is not possible to compile JVx!

Update [2]

With the current Javeleon beta release of today (Jan. 17) - version 2.0.3 - it is possible to use jar files too. Now the integration of Javeleon works perfect.

Thanks to Allan Gregersen and the Javeleon Team for the support.

4 Responses to “Application development without restarts”

  1. Thanks for the kind mentioning of Javeleon. We want to thank you back for your effort reporting on a few things that required some bug-fixing. I hope that Javeleon will show to be helpful in the long run :-)

    Cheers,
    Allan

  2. rjahn says:

    It is great to work with a motivated team!

    Thank you.

  3. Wes says:

    You refer to the Eclipse IDE throughout your article, do you feel this product could be used with IntelliJ IDE or with no IDE at all?

    Wee

  4. rjahn says:

    There are no dependencies between Javeleon and Eclipse. It should work with IntelliJ IDE. Simply use the same parameters for your "Run" configuration.

Leave a Reply

Spam protection by WP Captcha-Free