@blakeyrat said:
None of this shit (the shit in the subject line there) works. None of it. Maaaybe Java, if sane developers used it. (Java's shit for a desktop app, but for a web server its disadvantages pretty much disappear and it's not nearly as awful.)
NetBeans:
* Double-clicking to select a word works maybe 50% of the time
* The Build icon doesn't grey-out after you press it, meaning at one point I accidentally had three simultaneous build processes going
* The aforementioned "it can't render fonts correctly", and "it gives vague, stupid Subversion errors for no reason"
Maven:
* About a third of the time after a build, I find it hasn't bothered to copy over the most current .js files.
* After even slightly touching my build profile, it decides it has to re-download all (seemingly) 36 terabytes of libraries Java developers apparently think they need to build a website
* Maven and Tomcat aren't talking to each other in some way that boggles my mind, see below
Tomcat:
* Loves to return 404 errors when I know *know* the file exists, almost always after rebuilding the project
* So I've adopted the following rebuild process:
1) rebuild
2) bounce Tomcat
3) rebuild again
but despite doing that, it *still* returns a 404 error maybe 25-33% of the time (and Maven decides not to update my JS files a similar percentage of the time) and I have to do it again
* Pops up an error every time I log in, when its little system tray app fails to start the Tomcat service-- apparently they never bothered to test with a non-Admin account, or on a computer with UAC enabled
This is the only office in our company doing web dev in JSP. Why would anybody pick this shit software stack? Is it like Stockholm Syndrome or something?
Sorry you are having a bad day. For what's worth, I've worked with complex maven builds for almost 5 years now without a problem. Ant builds since 2001. We are talking builds that, for example, builds (incremental or full) wars and ears to then deploys them remotely (as in another data center across the continent), as well as initiating database deployment scripts, restarting the servers (also remotely), all without any problems. Builds that perform unit tests. Builds that fetch static content from a content respository server (like one running with TeamSite) to deploy them either on application servers or on HTTP server front ends. Builds for Tomcat, JBoss and WebLogic (and ATG Dynamo many, many, many moons ago) on Solaris, Linux, HP UX and Windows environments.
Heck, I've never done this myself, but I've seen colleagues using builds that actually roll-back (also remotely) in case of a failure. I'm not going to speculate why you are having problems. I can only tell you why I use these stacks you are having problems with, and how I (and many, many others) have been successful with them. In the most successful environment I worked with, we pulled daily builds for about a dozen different systems, some running on Tomcat, others on WebLogic, with deployments for dev, UAT, Systems Integration, pre-production and production environments.
I wouldn't use Maven if I had my pick (too much under-the-hood magic compared to Ant), but it is what it is, and it is something that I can get to work with a reasonable expectation of success and cost-effectiveness.
As for NetBeans, I've only used it casually, so I cannot say I've encountered the problems you are having. But I've used its Matise GUI tool for real-work GUI development without a problem.
As for Eclipse, I've been using it for a while now, for Java, Groovy, Spring Framework, SOA/Web Services and C/C++ development (lately just for C/C++ and CORBA development with different tool chains.) Never had a problem with it. I've used it very little for JSF development, so I cannot attest to its quality for JSF development.
In reference to your comment of having never seen an Eclipse-based product that works, I've never used Aptana, and the UML-tools in Eclipse are in their infancy (in particular the Papyrus distro).
However, I know that Omondo works well. I've also worked with Rational Enterprise Architect (based on Eclipse) that works like a charm. I've used an Eclipse-based rich admin interface to a OMG Distributed Data Service for Real-Time Systems, and I never saw a problem with it either. I know for a fact of people successfully using Eclipse Modeling toolkits for building domain specific languages as well.
I've also worked with MS tools and environments, and I think that the MS stack is absolutely fine for the jobs in the hands of competent developers. And this holds true for a Java stack, or a Python or Ruby stack. Same with a PHP stack, but for some reasons, there is a greater tendency for shitty developers to gravitate towards PHP.
I've seen complete wtf'esque train wrecks (developmental and operational) with a Java stack (and with a MS stack). And I've also seen very complex projects successfully executed with it.You would not see large financial institutions, Google, eBay, Amazon and IBM using a Java/JVM stack if it was so totally a bag of shit, wouldn't they? I know, rhetorical question, but it is one worth considering.
So that has been my experience with Java, Tomcat, Ant, Maven and
Eclipse. Not trying to convince anyone, but simply stating facts that I've observed throughout my career. YMMV obviously, so you have to ask yourself, objectively, why
you are having so much trouble with this specific stack.