Im working on a large project and the build process is slow to Fuse, so Im looking into hot deployment. Ive had a look at JRebel - but cannot see support for Fuse/Karaf - so am wondering if they would work together? Are there alternatives?
JRebel works with Karaf, really the best thing to do is just try it out. Depending on how you're running your app (in the IDE vs command line) you may need to add the JAVA_OPTS yourself. The IDE plugin can generate them for you.
Related
I recently switched from Eclipse to Netbeans 7.3 and experiencing a lot of quirks and i'm wondering if anyone else experienced them and/or got a solution. Because of these 'problems' i'm considering switching back to Eclipse again but i'm in doubt because NB has a lot of good things too !
These are the quirks:
when creating a new Java class, and make some typo's e.g. somewhere in a method, NB does not recognize / display the errors directly, but after a very long wait or a restart of NB.
This also happens to existing classes.
background scanning tasks is sometimes stuck at 100%
code completion does take forever. Don't even think about refactoring or renaming a class because it takes >3 minutes to scan the classpath (why, it's a new class for crying out load)
hot-deployment: changes are not always synchronized correctly with the (Glassfish) server.
Sometimes a complete undeploy and deploy is needed to reflect the changes made in the source.
NB manipules my pom.xml and glassfish-web.xml: it adds a deploy hint to the pom.xml and also changes or removes the context-root in the glassfish-web.xml. Please stop doing this!
Why o why can't i do a 'Fix imports' on my entire project. You can do a 'organize import' on the entire project, but this won't add the missing imports. See http://netbeans.org/bugzilla/show_bug.cgi?id=167031#c2
Running NB 7.3 on Windows XP, 3GB RAM, 2+GHz cpu
The project is a Java 7 maven project containing 12 modules / sub projects
I strongly recommend that you DO NOT attempt to install the ScanOnDemand plugin. It completely trashed my Netbeans, forcing me to use the Task Manager to kill the process. No existing projects were found; they were all listed as "unrecognized project; missing plug-in?". I had to re-install Netbeans.
One thing to look for is max heap allowed. Try adding "-J-Xmx2000M" to the Netbeans startup.
ref: Setting Heap Size
I suggest stick to your favourite IDE. Eclipse is still popular and Juno packages are doing good and Kepler is already available. You can try around latest packages.
IntelliJ IDEA looks better than other Java IDEs (light weight, faster, nice integration with SCM(source configuration) tools, possibility of easy cloud deployment, except that if you have freedom to choose your IDE whether you are part of a big/small teams, Otherwise there is no need to shift from one to other.
IntelliJ is the first IDE to give nice in-built support to Play framework
Google Android ADT is completely moving towards AndroidStudio based on community version of IntelliJ IDEA for faster and better GUI and app development.
As a Java developer it is not bad to try the other IDE to do some experiments or for any reason it strikes your mind.
Eg: Netbeans comes with sample apps in Java EE,Java7/Java2EE which looks better, nice examples for websockets, Servlet3.0, NIO examples etc,...but just try it or just ignore if it does not work. It is very easy to generate Entities from Database Tables, creating REST Endpoints in NetBeansIt may come with lot of in-built plugin-support for various java frameworks like RESTful webservice frameworks, JSF2.x, Primefaces3.x, SpringMVC, Struts but you may not sure to use the same version of framework. Some plugins may not work sufficient according to your business needs. Even if you okay with existing version it is not very friendly to develop Rich real-time UI development because Netbeans with Primefaces, instead you need to manually create XHTML templates.
Netbeans comes with nice support for Glassfish and tomcat, (other servers I am not sure but support is in-built). You can remote deployment with ease. Netbeans learning tutorials on JavaEE nice for beginners in the subject.
Netbeans also available as zipped bundle, hence no need to install even on Windows machines.
Eclipse has got better support with Java RoboCode learning tool (initiated by developed by IBM long ago.).
Also Netbeans comes with nice support for HTML5, Groovy, PHP, C++ as well (according to posts by users community, because I did not use them).
I just got my new computer and I'm going to learn an IDE fresh. Everyone suggests Eclipse; therefore, I'll go with that. I downloaded Java EE for I may use it later for java programming also. I don't mind the bloat.
What I want to achieve is that every time I create a new website project that HTML5 Boilerplate also gets created as a template to the project. Anyone know how to achieve this?
Also any additional plugins for web dev or anything to do helpful with web development ideas with eclipse would be most appreciated.
If you are using Java EE eventually, I think the best strategy would be creating a Maven archetype. This way once you have your baseline project definition, you can archetype it and create all your subsequent projects from that.
Apache - Guide to creating archetypes
If you don't have Maven yet, you can get it here.
And the Maven Eclipse plugin can be installed from the update site: http://download.eclipse.org/technology/m2e/releases
Finally, since you are new to Eclipse, you can install plugins from Help > Install New Software. Best of luck! I know that's probably a lot to take in.
For the last few years, we've used m2eclipse without issue, however it seems that the "new" version (ie. m2e) has broken backwards compatibility - something that I really hope that I've just misinterpreted.
My problem is this: I'd like to be able to build my existing project with the minimal amount of fuss. I don't have the time to write connectors for the 3 plugins that don't have them - my understanding of 2 of them is quite limited in the first place, and I have no understanding of the Eclipse plugin mechanism - but I'd still like to be able to use Eclipse to build the project.
Can I achieve this without reverting back to the old (working) version m2eclipse?
Am I correct in my understanding that there is no way to upgrade without having a connector for each plugin?
It seems as if my understanding was correct if this blog post is anything to go by:
http://grumpyapache.blogspot.com.au/2011/08/mess-that-is-m2e-connectors.html
M2E can invoke a plugin as part of the automatic build process if, and only if, there is a connector for the plugin, or you specially configure the plugin
... which means that:
You can no longer use your own plugins in the Eclipse automatic builds, unless you create a connector for the plugin, or create a project-specific configuration
The post goes on to list the issues with this approach. These are many of the same issues I have with the approach.
RANT: So there you have it - the m2e approach does suck as much as I feared it did! I was beginning to think it was just me!
I code both Spring MVC and also .Net stuff, so I can have Visual Studio and Eclipse (STS) running on my Windows x64 machine.
What I've noticed is that the Eclipse seems really slow on compiles and a lot of other functions, whereas Visual Studio seems pretty quick.
Even more noticeable is when I look at the Processes in Task Manager, Visual Studio is taking up 200 Meg while Eclipse is holding on to a Gig of memory!
I don't want to be an Eclipse hater, since I think it has some really good features, but can anyone suggest how I can make it more efficient, or am I stuck with this sluggish IDE? I've been thinking of switching to IntelliJ, but wanted to see if it was possible to tweak Eclipse to speed it up first.
Some pointers that could help :
Make sure you are on 64 bit JDK and Eclipse to leverage your system.
Use the latest version of Eclipse. Indigo is what I am on currently.
Uninstall un-necessary plugins.
Try creating working sets and arrange your projects. Close down sets which you are not working on.
You can try switiching off Build automatically, but that would not be a great idea to catch build errors immediately.
The best advice is to install just as much of Eclipse as you need and not a plugin more. Eclipse platform and Java support is extremely light-weight and performs quite well. It's when you add other plugins (written with varying degrees of quality) is when you start having problems.
I am developing a set of eclipse plugins, and I have several JUnit plugin tests that actually start another instance of eclipse, create a mock workspace and a mock project and runs various operations on them. I want to put that on continuous integration and I am at loss as to where to start. I am using Hudson, would there be any plugins that makes that easier? Can those tests launch eclipse in headless mode or something on the CI server? Pointers would be much appreciated.
I think the best solution for building Eclipse-based software currently is Tycho - it is based on Maven and uses your standard Eclipse files (like manifest, target platform, product definition). I got started with it using an intro from this blog: http://mattiasholmqvist.se/2010/02/building-with-tycho-part-1-osgi-bundles/, and it worked really well. We also use Hudson, and since Tycho is Maven-based, Hudson integration was trivial and worked simply by calling Maven, which Hudson supports out of the box.
As far as I know, Buckminster tries to solve these problems: you can create descriptors, and then Buckminster can execute your tasks.
For Hudson there is a Buckminster module, that helps executing the Buckminster builds.
maybe this helps you to avoid plugin tests? ;) i like to avoid them... by using mock objects...
http://blog.srvme.de/2010/12/10/mock-eclipse-ifile/