Eclipse - window builder distribution license - eclipse

I planning to use eclipse as my software to complete my java learning and project. I also planning to handle freelancer project by using eclipse as the coding software.
I understand that eclipse is free and I have gone through the term and condition - Eclipse Public License (EPL)
http://en.wikipedia.org/wiki/Eclipse_Public_License
As far as I know it is free to distribute my project using eclipse.
However, I planning using eclipse plugin - window builder, will this affect me when I wish to distribute my project for business purposes?
If it is off topic, remind me and I will close this question ASAP.

When putting a product in production, it should not matter what tools / plugins you use. These license you talk about mainly deal with modifying and distributing the IDE or plugin itself. You don't need to pay royalties or anything else because you used their plugin to develop with.

Related

Netbeans 7.3 annoyances

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).

Boostrapping new Eclipse machines with all the Plugins

Bootstrapping Eclipse on new machines is such a time consuming process, you wind up asking yourself whether you really need each plugin. But there all handy, and help develop consistent habits.
Eclipse bootstrapping problems include:
Explaining / documenting what needs to happen
The actual time pasting in the right URLs and downloading
Version compatibility and dependencies
Eclipse likes to restart after each one
The changeover to the Eclipse Marketplace means that some plugins and instructions you find on the web tend to be inconsistent, depending on when they were written.
The Licenses... over and over and over... yes, yes, yes... I understand that the person installing needs to be aware of it, and have a chance to review them, but there's got to be a better way.
It'd be nice to have "patch file" (either binary or meta) that spells out what I want to add on top of stock Eclipse installation. I'd really like to find (or create) a 1 or 2 step process that sets up Eclipse, plus a favorite batch of plugins:
subclipse
m2eclipse
jetty support like runjettyrun
android sdk and plugin (or at least just the plugin)
aspectj
Web Objects / WOLiops
python, other langs
JVM Monitor, maybe EclEmma
probably a git plugin pretty soon.
Does command line maven help with any of this? It seems like its repository management would fit at least part of the functionality.
On a machine with an Eclipse installation matching your needs use File -> Export -> Install -> Installed software items to file. Import the generated file using the same menu on all other machines.
As Scott says, a good approach is to simply package a fully prepared Eclipse installation once all the plugins you need are installed. The downside is that you have to update most plugins afterwards.
Another option is to use Yoxos. With it, you can create a profile and configure it with all the plugins you need (and apparently Yoxos can do more than that).
Finally, this page might interest you concerning the configuration side of things.
Solution 1 is too search for more advanced Eclipse distributions.
For example, STS (Spring Tool Suite) comes with
AspectJ
EGit
m2e
(and of course) Spring IDE
One small trick can be done with m2e-android - Android Configurator for M2E Maven Integration. If installing it on clean Eclipse, it will also automatically resolve to install :
m2e
Android Developer Tools (ADT)

Extension/plugin development tools - integrated into the IDE or separate?

Part of our application is a fairly extensive plugin development kit allowing third parties to write extensions and add-ons that can be added to the product.
In addition to the standard libraries, project templates etc, there are a number of tools that are shipped that speed up development. For instance a custom resource editor that allows people to localize their plugins using the in-house resource framework.
Currently these tools are standalone applications that are installed as part of the PDK. We've had a suggestion to integrate them into the development environments that customers can use to write plugins, including Visual Studio and MonoDevelop.
As developers, what would your preference be? Would you prefer to stay within the IDE and have another window docked to the side allowing you manage resources, or an entirely separate application that doesn't require the IDE?

Enterprise Eclipse Provisioning - Or - How to share your standard Eclipse setup with other developers

We use Eclipse as the IDE for developing all sorts of Java/J2EE applications in our 150 people odd IT department. One of the common problems we have been seeing is that developers download and install different versions of Eclipse and plugins based on their personal likes and dislikes.
We have been trying to bring some consistency to this and have standardized on the version and the plugins that developers should be using. So the problem now is how do we distribute this installation to the team. We have zipped the directories and shared it through a shared drive. But I am looking for a better solution using some kind of provisioning tool for Eclipse using which people can install the IDE or get updates.
Has anyone faced this problem? What are your solutions to this? How do you ensure a standard Eclipse environment across developers?
I found Yoxos as a potential solution to this. Does anyone have any experience with it? Can p2 be used to do this?
You can create your own composite p2 repository and use p2 installer to bootstrap Eclipse from there. Alternatively you could use one of the commercial tools, such as Yoxos, Pulse or Nexus.
Our solution is currently a non-freware one, based on Nexus Pro.
Since it supports p2 repositories as well as well as the ability to combine multiple Eclipse update sites into a single URL, we are using that last feature to propose one URL per project, each one referencing the right set of plugins for each project.
alt text http://img714.imageshack.us/img714/9762/mavenp2.png

Prepared eclipse with famous plugins / known good configurations

I've just set up my machine from scratch and was wondering if there are any open available ready to use Eclipse versions (3.5 preferred) which have already installed famous (most used) plugins like subversion support, maven, pmd, checkstyle, findbugs etc. This would save me time setting it up myself.
thx,
kuku
Never really tried it myself, but this may ease it up for you: yoxos
And then there's myeclipseide but I think you pay for it.
For making sure everyone on our team works with the same set of plugins, we are using the notion of "group of plugins" in a Nexus Pro (so non-free) repository
Nexus Professional has support for Eclipse P2 repositories, and it can serve Eclipse plugin artifacts to tools that know how to interact with the Eclipse P2 repository format including Eclipse 3.4 Ganymede.
If you use the Eclipse IDE, you probably have a set of plugins which every single developer needs to install to get productive.
Using Nexus Professional, you can combine multiple Eclipse update sites into a single URL which your developers can use when they are configuring a development environment.
Using Nexus Professional as a single point-of-access between your developers and the Eclipse update sites they depend on allows you to manage and define a set of common Eclipse plugins in your organization's Eclipse development environment.