Publishing a common workspace setup - eclipse

I want to set up certain configurations and preferences in IBM RAD (or say eclipse) so that a big team will be able to use the set-up already done. this would reduce the inconsistencies and rework effort in the team.
Preferably I want to keep that in subversion.
Right now, when created a workspace in my personal desktop and added it to SVN, everytime my team mates check it out obviously the .metadata and other eclipse internal files change based on their input.
Is there a standard practice/process to publish a common workspace setting in RAD/Eclipse?
Thanks

There are probably 2 things that matter most when getting yourself or someone else a new workspace. Getting the preferences set up, and checking out the appropriate source code.
1a) you can set up a workspace, and then export all the preferences. That provides a eclipse preference file that can be imported into a new workspace
1b) use project specific preferences where possible, as those will get checked into your SCM
2) the projects you work on can exported to a Team Project Set File. That can be imported into a new workspace.
Check them all into a releng project in your SCM. In this context, a releng project is just a project that has all of the build information in it. Then a new workspace setup involves checkout out the releng project, and importing the PSF and the preferences file.

Or have a look at Workspace Mechanic for Eclipse: http://code.google.com/a/eclipselabs.org/p/workspacemechanic/

If you are using Websphere RAD 7.5 it allows you to export a backup of your server profile preferences. So all of that configuration for databases and classpath can be backed up. I would try deploying that to your team and see if that helps.
Right click on the server, then click Server Configuration> Backup .
Hopefully that does the trick.

Related

what should keep in mind before providing work space for eclipse?

This is how the workspace assign on an eclipse
My Web project run only when my project is at c:\Ampps\www\myProject but eclipse contains it on C:\Simple\workspace\myProject. My problem is I want to run project and the workspace is different. What is the things keep in mind before choosing the workspace. And what are the alternatives if the wrong workspace choosen ?
Eclipse does not require your projects to live under your workspace folder. Therefore you are allowed to have a project and workspace as you describe.
When creating a project, uncheck the default location checkbox in the wizard and select your truly desired location.
My only recommendation on workspace location is to have it on a local drive and don't have it as a sub directory of any project in your workspace.

How can I export Eclipse compiler settings to a file?

In Eclipse I have exported code formatting, cleanup, import orders etc to files and checked them into svn.
This is useful for my team so that they can all use the same setup.
However, I can't find a way to do the same for Compiler options. There are quite a few useful settings that aren't switched on by default and its error prone for everyone to change them manually.
I know that I can use FindBugs (and we do through CI) but the Eclipse compiler options are better integrated and faster.
The best way to share all of those settings is to use Project-specific settings. Open the Project properties and select the various sections that you want to configure (for example, Java Compiler, then select the option Enable project specific settings.
Any settings you configure this way are stored in the project in a folder named .settings. Check that folder in to source control along with the .classpath and .project files, and whenever the project is checked out Eclipse will automatically apply the settings. Workspace settings are overridden by project-specific settings, so using this technique it doesn't matter how other workspaces or users have their settings configured.
The answer of #E-Riz is perfectly correct. If you find that you need to synchronize more than the listed settings for your team members in the future, then you should also have a look at Googles workspace mechanic, which allows to automatically apply any set of preferences to a workspace and to check during each start if the local preferences are still valid for the shared setup.

How to enable Subversive (Eclipse Plugin) for a project

I am using subversive (an eclipse plugin) to connect connect to an SVN repository. I have only been using it for several weeks but it has been great.
Whenever I create a new project everything works great (see the left side of the image), the project automatically hooks itself up to svn. When I open a workspace that I had before I installed subversive it does not use the plugin (see the right side of the image).
I have tried numerous things to try to enable the plugin:
I looked under all the options under window -> preferences (especially the team preferences
I looked under all of the properties under the project (right click the project -> select properties)
I deleted the workspace folder and created a new one (and re-imported my project)
I looked at the .project file and compared it to a projec that has the plugin enabled but could not see anything relevant there
How can I enable the plugin? The only way that I have found that works is to checkout the project in a fresh empty folder and then open it in eclipse. I am trying to avoid this since it will take an hour or so to redownload.
Right-click on the project, choose Team - Share project... It should then detect the .svn directories already present and propose you to reuse the SVN information stored inside.

How to move an eclipse (helios) project to a different workspace?

First, Eclipse is not my native IDE -- I'm barely a n00b with it. I set up a project in a workspace that was actually in the directory of another client's project (I didn't really follow the whole workspace/project thing) and, in fact, now I can't even find the Eclipse workspace file to open it.
What I'd like to do is:
Open my eclipse project (/workspace?) -- I know where all the files are on disk, just not what to open in order to see them in Eclipse -- and
Move my project to a new workspace, which I guess I will put in a generic Eclipse-y place, and have that one workspace reference all my Eclipse projects.
(Is that the right way to do it? Does Eclipse dislike me being a one-project == one-workspace kind of guy?)
Please educate me regarding The Eclipse Way so that I can get back to work writing code.
Thanks!
Roughly a workspace (which is a directory) in Eclipse contains:
configuration (installed JRE, Servers runtimes, code formatting rules, ...)
one or more projects
You can of course have as many workspaces as you want (but only one can be opened at a time) and a project can also be part of different workspaces.
If you know where your sources are and want to move them to a new workspace here is a possible solution:
Start Eclipse and when prompted for a workspace choose where you want the workspace to be created (if directory doesn't exist it will be created). For example you can choose C:/Dev/Workspace/.
If you are not prompted, go to File->Switch workspace->Other
Once you are in your workspace you can import your exisiting project with File->Import then General->Existing Projects into workspace
Navigate to the folder containing your project sources, select your project and click finish
I don't know if it's a best practice or not but what I usually do is the following:
I have one workspace for each of my customer (workspace_cust1, workspace_cust2)
Each workspace references my commons library projects and add client specific projects
This way each time I change my commons library it's up to date in every workspace.
If you want to apply
one workspace = one project
You could to the following:
1) Copy the eclipse desktop shorcut
2) Modify the shortcut by appending "-data workspaceLocation "

Working on eclipse project in subversion

All,
I have a 20 member dev team working on a development project.
To provide greater control we have created a workspace with necessary projects and configurations (like project preferences, set-ups etc) in IBM RAD.
The idea is to have the pre-configured project in subversion so that when the dev team members checkout the project they get a complete workspace, so that they do not have to configure setups them selves.
However the problem is everytime someone checks out the workspace IBM RAD will also edit the .metadata (and some other folders and properties file) folder that has been checked in.
Idea is the developer should not have to change anything except the source code folders or application specific files.
I think many other teams might have faced situations like this.
Can anybody provide the best practices/process/references on how this is done in development projects?
Thanks
I think svn ignore will solve your problem.
check http://svnbook.red-bean.com/en/1.1/ch07s02.html
The svn:ignore property contains a
list of file patterns which certain
Subversion operations will ignore.
Perhaps the most commonly used special
property, it works in conjunction with
the global-ignores run-time
configuration option (see the section
called “Config”) to filter unversioned
files and directories out of commands
svn status, svn add, and svn import.
You cannot stop IBM RAD from updating .metadata folder and Eclipse doesn't support splitting workspace folder as it does for the configuration folder.
The best solution would be to setup your build scripts to be able to setup your workspace based on some .zip file(s), where you've captured the required settings for the workspace. This will give the closest thing to automatic workspace setup without having to deal constantly with changed files in .svn.