Currently, each program is packaged up into a JAR file using Eclipse's export option. Those JARs are then deployed to our Linux Server manually where they are tested. If they pass
testing, they are then migrated up through QA and onto Production through a home grown source code control system.
The next time someone makes needs to make a change to the program, they "check out" the JAR from production. This copies the production JAR back down to the development Linux Server. The developer then has to import the JAR back into Eclipse and reconfigure the project packages before beginning an changes.
Searching inside a JAR can be done but it is messy. We have written a "search script" to do this - which basically unpackages every JAR file in the system, does a search within those files, and then deletes the unpackaged files.
We have looked into using Subversion but unless you have all the projects already in your workspace in Eclipse, you can't search for a specific text inside the Java. You can only search the commit comments.