I would like to introduce the following topic for open discussion, as always your feedback is very important to us.
Many of you who develop Java extensions with JIS are using a text editor for editing the generated Java source code and use jacc.bat from the command line to compile. This has been this way for 13 years now.
In recent years we saw the introduction of excellent Java IDEs such as Eclipse, NetBeans and IntelliJ to name a few.
These tools allow you code, compile, run and debug Java code from inside a single development environment.
However, creating the initial project in these tools out of the JIS generated source code is a challenging task for a novice Java developer.
The idea we are considering is that during the JIS generate runtime process, JIS will automatically generate the project definitions to allow you to open a Java project inside a Java IDE, the project will be separated into modules in the form of \client, \server, \xhtml inside the IDE so that if you have a large project you’ll be able to work only on the main application client code for example.
Using this feature you’ll be able to program Java extensions using all the latest standards in Java development such as code completion, re-factoring and Unit testing, it will also allow you to run and debug the server and clients from inside the IDE.
Our first choice was to add support for the Eclipse IDE (http://www.eclipse.org/) but after studying the subject in detail we came to a conclusion that the best tool for the job is the IntelliJ idea (http://www.jetbrains.com/idea/) which is one of the best IDEs around and is open source and free to use.
So the questions for discussion are:
Should we invest in supporting the IntelliJ IDEA ? Are you willing to learn this tool ?
Should we compromise on Eclipse even though it will not allow to separate the workspace into project per library and will not support running the JIS Java client Applet correctly ?
Should we leave alone this topic, make minor improvements to jacc.bat and focus on other features in the roadmap ?