labor work is little more in this fashion.Better approach is keep common "sherlock" lib for all projects. If there is any customization as per project add one more layer in between. E.G
E.G your current scenario is something like :
public class Project1YourActivity extends sherlockActivity{
}
public class Project2YourActivity extends sherlockActivity{
}
Now your problem is you have made some changes in "shrelok" lib as per project requirement right? That's why you need to keep maintain seprate copy for each project.
What you can do in this case is keep common "Sharelok" lib in workspace for all of your projects.
Project1
create on layered activity in your project like
public class Project1ShareLokActivity extends sherlockActivity{
// customize sharelokactivity here as per your requirement.
}
public class Project1YourActivity extends Project1ShareLokActivity{
// Now Extend youractivity by customized sharelokactivity rather sherlockActivity directly
}