The code we use to determine whether to turn a project into a deployable osgi feature is:
protected IModule[] createModules(IProject project) {
if (!WorkspaceModelManager.isBinaryProject(project) && WorkspaceModelManager.isPluginProject(project)) {
IModel model = PluginRegistry.findModel(project);
if (model != null && isValidModel(model) && hasBuildProperties((IPluginModelBase) model)) {
IModule module = createModule(project.getName(), project.getName(),
MODULE_TYPE, VERSION, project);
return new IModule[] { module };
}
}
return null;
}
So yes, we require that osgi recognizes it as a plugin project *and* that it has a build properties file :)