Netbeans 4.1 Released
njcoder writes "Netbeans 4.1 was released a few days ago. Though it is only a short time since 4.0 was released and only a minor version number increase, the new Netbeans 4.1 contains a number of significant enhancements. New features include enhanced support for J2ME (mobile) projects, a new Navigator component, enhancements to the Ant based project system, ability to define multiple source roots, enhanced support for J2EE applications including EJB support for creating Session, Entity and Message Driven Beans, bundled J2EE application server, bundled Tomcat server upgraded to the 5.5 series, Web Services support, Eclipse project import tool, and more. The days of a slow and ugly Netbeans seem to be over. Using the new Metal look and feel in Java 5 brightens things up a bit as well. More information can be found in the release info and go here to download the new version. Java boutique has a review, with screenshots, of the new released titled IDE Wars: Has NetBeans 4.1 Eclipsed Eclipse?."
I don't care what new features it has, is it stable? We used Netbeans for a while (a few months ago) at the company I work for in Austin, but we gave up on it because it crashed constantly. We ended up switching to Eclipse half way through the project at a great loss, but at least it's stable. I have very few good things to say about Netbeans...
The fact that Eclipse is built on SWT and NetBeans is based on AWT itself speaks volumes. From TFA "I have felt that Eclipse is getting slower over the versions, while, at least the word on the street is, NetBeans has evolved in the other direction." Maybe this is the author's perception, but again, I am not sure if NetBeans will perform faster than Eclipse with equal types of plug-ins loaded.
The UI is responsive and the controls are intuitive. Building web apps isn't too difficult either. So where is the love?
For those in the know, how does NetBeans compare to ther Java IDEs especially on Linux?
There must be something better out there. Am I missing some webapp debug tool for Eclipse?
Another thing: I loved the Search/Highlight feature (like the google bar). I think that this is fundamental for OO programming: you search for an object identifier in a piece of code and then you are able to quickly look at all the methods that are called on that object so you get an immediate feeling of what the code is doing to manipulate the object. Ecplise does not have that.
But it works, so I am using Eclipse.
As for the question: noup, NB is not eclipsing anything. It was about to eclipse Eclipse but it crashed yet another time and missed its chance.
I search Google for netbeans php plugin: 37,000 results. eclipse php plugin: 1.4M results.
Enough said.
C'mon, guys. An announcement of something is one thing, but this "article" is just a bunch of marketeering that would be more appropriate as an item under the "Advertisement" column.
Actually, you don't have to wait. Just pull the latest milestone or nightly build from this page:
e x.php
http://download.eclipse.org/eclipse/downloads/ind
You can see what's coming in the next version of Eclipse here:c lipse_project_plan_3_1_2005_02_14.html
http://www.eclipse.org/org/councils/PC/platform/e
The Web Tools Project is adding Eclipse support for HTML, CSS, JavaScript, XML, XSD, XSLT, SVG, SOAP, WSDL, UDDI, SQL, XQuery, etc:
http://www.eclipse.org/webtools/index.html
And keep in mind that Eclipse can currently run on an entirely Free Software platform using GCJ (with prebuilt RPM's included in Fedora Core 4!):
http://klomp.org/mark/gij_eclipse/setup.html
While I previously used Netbeans (3.6) and liked it, I have since moved to Eclipse (3.0.1) and love it. The large amount of plugins and comstomization of Eclipse just makes it the winner in my book.
However if I alt-tab away from my Eclipse window for a while then come back to it to do more coding, it seems to be reloading itself and acts very slow for a minute or two. It drives me crazy.
Any idea what the heck is causing that? Is there some memory cache setting that needs tweaking or what?
Friends don't let Friends use Internet Explorer.
When I write Java in Eclipse that isn't a web app (believe it or not that exists), it's like there's no compiler at all. I save, things get compiled. This confused the heck out of me at first (it's apparently on by default), but I came to love it. Also, if I make a typo or braino, eclipse instantly shows it to me without having to wait for a compile cycle. Does NetBeans have this feature, or do I have to explicitly invoke the compiler all the time?
I am no longer wasting my time with slashdot
I use eclipse on Linux and Windows. I don't have the lost focus for a while problem on Linux, but it happens all the time on windows. I think it's because some or all of the JVM has been swapped to disk, but I haven't really looked into it.
Be Safe! Sleep with a Marine. Semper Fi!
So what App/EJB Container does this new version of Netbeans come bundled with? Is it open source? Perhaps JBoss or Apache Geronimo(although i don't think it's complete yet)?
Things like Perl and PHP may not be too far away for netbeans either. They have the Coyote project which brings in support for Jython and Groovy.
It's nice to have everything in one space but sometimes it just makes sense to have different applications for specific purposes.
Open Source Java DAO Generator
Netbeans also has C/C++ modules. I don't know how the projects compare, but it's been there in Netbeans for quite a while.
"Oh, I hope he doesn't give us halyatchkies," said Heinrich.
Telltale Games: Bone, Sam and Max
I must say, it is very pleasurable to finally read an article on such a well designed web site. I congratulate them on their superior column width and small ad space.
"Ad infinitem et ultra!" - Buzz Lightyear
It's too easy to blame IBM and its financial support. Clearly, there is a huge demand for an extensible, vendor-neutral IDE platform, a demand Eclipse immediately satisfied. There is also a huge demand for native widgets that Sun seems to have ignored or overlooked; the world is thirsting for good, cross-platform GUI toolkits, and for many people and companies, Swing has never been a real option. Sun has never seen the beam in their own eye that is Swing. Java GUI apps have never really taken off because of the real and perceived weaknesses of Swing, but with SWT and Eclipse we're seeing renewed interest in Java as a language for "real" GUI apps.
I'm in the SWT camp myself. I prefer to deal with native widgets in the IDE -- and Eclipse performs and looks very well on Windows (with non-Windows platform support catching up) -- and as an end user, Swing apps have always peeved me; for example, when I got an LCD monitor, no Swing apps could exploit ClearType, which all Windows apps -- Eclipse included -- do automatically by virtue of using a single font renderer. When you emulate something that is constantly evolving, you will always get an imperfect emulation; not to mention that satisfactory emulation of a whole OS -- because GUIs is more than just look and feel -- is nigh impossible; note, for example, how Windows XP themes don't work on Swing apps.
I also love the fact that I can develop native applications with Eclipse's RCP (Rich Client Platform) framework, and I can do it with ease unparallelled since the days of Borland Delphi.
Netbeans probably has an edge when it comes to J2EE support at the moment. Developing framework-specific tools -- J2EE, XML, etc. -- has always been secondary to delivering Eclipse proper. Eclipse has many rapidly-evolving subprojects covering plugins for J2EE, web standards, aspect-oriented programming, graphical modeling, performance/quality testing and so on.
While not all ready for production, the quality of these tools is often amazing; as significantly, a lot of thought is always put into making tools extensible and based on reusable frameworks. For example, the graphical modeling plugin is based on a generic graph-editing framework (the GEF) which can be reused in your own applications. Eclipse itself I find to be a momentous and beautiful engineering effort, based on solid, pragmatic OO design.
Apparently the latest Eclipse milestone is much improved in this regard (so I'm told, I don't use it myself).
My problem with Netbeans is that the built-in editor is severely lacking in functionality when compared to both Eclispe and IntelliJ IDEA. I really want to like Netbeans, because I found it much easier to jump in and get started with it than Eclipse and it's much cheaper (i.e. free) than IDEA. But I gave up on it because it doesn't have things like IDEA's intentions (I believe there is something similar in Eclipse), automatic generation of getters, setters and constructors from fields, that thing where you press control and click on a class name in the source to go to that file, and several other niceties. Its refactoring support is also lacking when compared to that of its rivals.
To be fair most, if not all, of the issues I've mentioned are planned for future releases according to their website, but it's not there yet .
Suck figs.
Why only compare NetBeans to Eclipse? IntelliJ IDEA has for a long time been the most innovative Java IDE (IMHO) and it's the only one I use. Many of the features I see in Eclipse now were in IDEA first. Whilst I have no problem with Eclipse, I like to (a) get those cool features first and (b) support the guys at JetBrains who continually come up with the goods.
---- Den ene knappen er powerknapp, den andre er Bender voice knapp "Bite My Shiny Metal Ass"
like netbeans has had for years :) Right click on the toolbar and click on the Memory toolbar :)
Open Source Java DAO Generator
However if I alt-tab away from my Eclipse window for a while then come back to it to do more coding, it seems to be reloading itself and acts very slow for a minute or two. It drives me crazy.
Apparently Windows is very aggressive about forcing all memory allocated by minimized windows out into VM. There's an attempt at a fix for this in the latest milestone (3.1M7)...
deus does not exist but if he does
Netbeans.. eclipse... netbeans... eclipse....
can't decide. i think i'll stick with vim.
Sun has megabytes of unfixed bugs, but instead of focusing there, they are trying to compete with a highly successful, well-written free tool. This push for NetBeans ultimately comes from Sun's pathological desire to own and control everything: Sun absolutely hates the fact that Eclipse doesn't require their proprietary toolkit and that Eclipse can compile with open Java tools. Sun wants a desktop based on Sun Java, a server-side platform based on Sun Java, an office suite based on Sun Java, and an IDE based on Sun Java. It's really the same thing Microsoft is doing, only that resource constraints and public opinion constrain them a little more (e.g., they can't start a new GUI project from scratch, they just have to hack Sun Java into Gnome).
Eclipse is the only sensible choice for a Java IDE at this point: NetBeans may be a little better in some areas, and Eclipse in others, but those differences are minor. The deciding factor is that Eclipse has become the de-facto standard platform for plug-ins.
NetBeans may be a decent IDE, but is it substantially better than Eclipse? Does it have any specific, compelling advantages? If not, then what's the reason to use it or waste time on its development?
Eclipse not only is fully open source, it's what everybody is developing plug-ins for. And, unlike NetBeans, Eclipse actually runs on open source implementations of Java, which means that it ships with Linux distributions.
Why does Sun keep wasting resources on NetBeans? Don't they have anything better to do?
Well, you haven't told us what platform you run on (Windows?). Under X11, Swing sucks horribly, and not just in terms of performace. The worst part of Swing is that it almost looks like a native toolkit, but it behaves wrong in so many ways.
There are decent cross platform toolkits. There are even decent cross platform toolkits that do their own rendering. Swing is not one of them.
I use the KeepResident plugin to force Eclipse to hold on to its memory.
I'll let the author do the talking for me on the subject of how nice it is and how well it works:
Why does Sun keep wasting resources on NetBeans? Don't they have anything better to do?
My take is Sun refuse to accept the SWT. If Sun accepts Eclipse, it means they endorses the use of SWT and that's a slap on the face to their own Swing developers.
Oliver.
Cool Beans!
I've evaluated JBuilder, Netbeans, and Eclipse. I prefer to use Eclipse, which seemed by far the best for vanilla code crunching. I had to download the in-development web tools to do J2EE, it was kind of messy to set up. It currently doesn't support the Java 5 language enhancements either, IIRC. Netbeans looks to be the best for J2EE currently (of the IDEs I looked at). The Eclipse Web Tools in their current (pre-release) state are clumsy and unstable, but generally effective. I was just doing a small servlet/bean application, so the real pros might be aware of deeper quirks or deficiencies.
Would anybody like to explain what exactly "Netbeans" is, in simple language for us "normal" developers?
about any new Netbeans release is the sweet new splash screen.
The question of whether a computer can think is no more interesting than the question of whether a submarine can swim.
In late 2003, we looked at both Eclipse and Netbeans (3.6) as platforms to build a cross-platform fat-client app on. Netbeans at that time kicked Eclipse in terms of features, documentation, samples, support, and everything else. During development, it had its quirks but on the whole we were very impressed.
Nb4 was under development/test at the time but wasn't quite ready enough for us to build on (even though we started using it as an IDE).
...(mostly) shameless plug...
This way to the egress...
The heart of all this conflict really boils down to one issue: performance. SWT vs. Swing. Java developers have been debating SWT vs. Swing since the release of these two IDEs. More specifically, the debate has been about using SWT or Swing on Linux platforms.
One of the arguments against SWT is simply this: it's not part of the Java specification. SWT proponents argue that the responsiveness of a native application can outperform any pure Java implementation. Who is right? That is still up in the air, but it does seem that performance issues have at the very least leveled out, leaving the ultimate determination up to the other features of the IDEs
That's completely wrong. People like SWT not so much for the performance but for the fact that it acts like a native application. You get sub-pixel rendering on LCDs, and so forth whereas Swing is constantly playing catchup.
That Swing is part of the J2SE is a non-benefit. I'm using the IDE, not waging some holy war or caring about how it's implemented. I can't see how as an IDE user I would be happier with Swing because it is part of the J2SE.
dominionrd.blogspot.com - Restaurants on
So ignorant,its not even funny. This goes for plugins too. Netbeans, imho, has surpassed eclipse in capabilities. Download Netbeans and look at what you have, then download Eclipse and look at what you have. You'll find that Netbeans is way more feature rich. Also, even after you install your favorite eclipse plugins, Netbeans still usually has a few key features that eclipse just can't compete with. Most programmers at my job used to use Eclipse, most heard bad things about Netbeans from the older days when it was stagnant in development and slow. Since 4.0 (and even better with 4.1), alot of people have been changing to Netbeans, it just works and everything integrates wonderfully.
Regards,
Steve
That's actually the great thing about Eclipse: there's usually (always ?) a plugin that does what you need.
The difficulty is just to find it.
Awesome PHP plugin for Eclipse. Includes Smarty support also http://phpeclipse.sf.net/
Perl plugin also exists for Eclipse. http://e-p-i-c.sourceforge.net/
This post is licensed under the Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 License.
IBM absolutely hates the fact that NetBeans doesn't require their proprietary gui toolkit
SWT is under the CPL, so it is not proprietary. Swing is not under an open source license, and even the Swing specification is Sun-proprietary.
NetBeans can compile with standard Java tools
The question of what "standard" Java tools is not relevant. What is relevant is that in order to use NetBeans, you are dependent on Sun proprietary code.
The fact that Sun, for marketing purposes, likes to misrepresent Sun Java and Swing as "open" and "free" doesn't make it so; the licenses are clear: Sun Java is proprietary, as is the Java definition.
I use MyEclipse plugin for Eclipse for J2EE development (source level debugging of JSP, etc).. Its a $29 annual subscription.
They do provide netbeans-4_1-windows.exe, but where's the distributable .MSI??
When I shall deploy this to hundreds of PC, do they want me to go install this manually on each PC?
I use eclipse myself, but netbeans does have generator for getters/setters. You just need to expand the class in the navigation tree, and go to manage properties. If you add a property, you get a field, a getter and a setter. Sorry for being vague, but it's been a while since I used netbeans.
--Coder
The other reason is that Sun does not like the name. The name was chosen specifically to appose Sun (i.e. eclipse of the sun).
You might also find this entry useful for future reference.
If Swing behaves wrong its the PLAF which can easily be patched unlike all of these other toolkits, furthermore Swing 1.4 and higher has a new GTK look and feel and Java 1.6 will delegate rendering of GTK components to the underlying native system so its L&F in GTK will be perfect.
Cough... bollocks. The GTK LAF does no such thing. It's yet another "looks a bit like a native toolkit, but isn't... and is still typically ass-slow Swing."
Has NetBeans 4.1 Eclipsed Eclipse?
No. Next Question.
Perhaps if Sun could hack Swing's native look and feel capabilities to be a little more pervasive, we would have a better solution.
(%i1) factor(777353);
(%o1) 777353
You can debug JSPs w/ any app server that preserves JSP servlet source files. In Eclipse you just add the folder of the jsp_servlet source files to the project source and debug as usual. I imagine you could do the same w/ Netbeans.
Whereas SWT is faster than AWT, Swing is faster than SWT.
Karma: It's all a bunch of tree-huggin' hippy crap!
Okay, so I decided to take a look at Netbeans. I've been an eclipse user for a year or so and Emacs before then. The JSP refactoring in NB is very good. Better than Eclipse and even MyEclipse. But, I'm finding the CVS interface lacking.
MyEclipse allows you to see at a glance what directories/packages have code that has been modified. That saves me from searching through for the files that I've changed. NB shows you the icon on the file itself, but it the directory is closed, then you can't tell anything about the files.
Is there a plugin or a setting that I can change which will show more information?
Also, how do I replace a file with the latest from CVS? If, for instance, I've made a change I don't like? Do I erase the file then update the directory? What if I don't want to update the other files in the directory? Eclipse's "Replace With" and "Compare With" options are very nice.
Finally, how do I tell NB to collapse the names of the packages? In Eclipse, I have it setup so java.lang.reflect shows up as j.l.reflect, which saves a lot of real estate. My project's main package structure is net.reliableresponse.notification, which is a bit much on a 1280x1024 screen.
Thanks,
-Dave
Citizens Against Plate Tectonics
As someone who's used both, I'll chime in.
I've used NB to build some Java applications that were mostly GUI. Prior to 4.0, the project support in NB was pretty broken, but now I think it's great. I really like being able to customize how the IDE does builds, javadoc creation, etc., by customizing the ant files.
I also really like the GUI builder in NB. I haven't tried the GUI builder in Eclipse yet, but from what I see of it on the net, it doesn't seem as polished. Also, I happen to like Swing, and have no need or interest in learning SWT.
My current project doesn't have a GUI, and my teammates have convinced me to try Eclipse.
The big win for me with Eclipse is the "quick fix" (ctrl-1 by default). It brings up a pop-up menu of common options for fixing the problem where the cursor is. This can include adding an import (it nearly always figures out the right one), adding a parameter to a method call, changing the invoked method to include the parameter you've used (with the correct type), creating a new local variable or class member variable, and wrapping the current line in a try/catch block (with all requisite catches). Once you get used to it, you can just type code and later use quick fix to define variables for you, so you don't have to manually type declarations as much.
As someone else pointed out, the refactoring is also a lot better. I'm really happy to see NB getting better refactoring, both built-in and through commercial add-ons, but the built-in refactoring is much better in Eclipse. I agonize a lot less about naming of classes and methods now, because it's really easy to change it later. More sophisticated refactoring, like pushing methods up or down in the class hierarchy, is also easy.
One thing I still use NB for is javadocs. The NB javadoc problems browser is a really nice way to find problems with javadocs and easiliy fix them. Eclipse has some support for writing javadocs, but no centralized "fixer" like that.
Another area where I prefer Eclipse is version control. The "Team synchronization" perspective is nice because it lets you easily view conflicts, changes you've made, and changes in the repository separately or all together. Also, the visual diff is nice.
I will probably continue to use both of them at times (and emacs now and then, too), and wish them both great success.