Over the last couple of years I have accumulated a fair amount of Ruby code across a couple of projects at work, and I have factored out several components into reusable libraries, although I haven't needed to turn them into gems yet. Each component looks like a standard library with subdirectories for lib and test. Lib has the code and test has the tests. I have rake files for running tests and various other subdirectories for support resources in the root of each component.
To manage the project dependencies, I setup a common config.rb then I call that from my application to fill the loadpath with the required libraries. This allows me to keep my various libraries and rb files portable by just adding in a require "config" and then simple "require"'s for any given dependencies in the class, without specifying path info in the require arg. It grew out of a desire for modularity as my scripts became applications and spanned multiple projects.
This simple step has made it easy to manage my various applications and my libraries on which they depend. I have also paid particular interest to how Rails manages its load path and environment. I am curious how others approach the issue of managing ruby projects that have dependencies on each other. I am sure there might be other clever ways to manage it without going all the way to using gems as that seems kind of heavy for internal projects that all share the same version control tree.
Send Java Get Junit