Modificar mediante programación Eclipse CDT espacio de trabajo y opciones de un plugin

StackOverflow https://stackoverflow.com/questions/938439

  •  06-09-2019
  •  | 
  •  

Pregunta

Quiero modificar un espacio de trabajo de Eclipse mediante programación desde el interior de un plugin (la adición de los proyectos existentes es mi solicitud principal). También quiero modificar las opciones de CDT (medio ambiente, opciones de indizador) desde dentro de ese plug-in.

¿Alguien sabe cómo hacer mejor esto o me puede apuntar a buenos documentación sobre ese tema?

EDIT: En realidad no quiero que modificar la configuración del proyecto CDT pero algunos de los ajustes globales CDT (en realidad quiero desactivar el indexador).

¿Fue útil?

Solución

Depende del tipo de modificación que está después.

Por ejemplo, la adición de un proyecto se ilustra mejor por rel="nofollow este enhebrar .

String theProjName = "Test";
String theLocation = "/some/test/project";

try {
    IWorkspaceRoot theRoot = ResourcesPlugin.getWorkspace().getRoot();
    IProject theProject = theRoot.getProject(theProjName);
    IProjectDescription theDesc =       theProject.getWorkspace().newProjectDescription(theProjName);
        theDesc.setLocation(new Path(theLocation));
    theProject.create(theDesc, new NullProgressMonitor());
    if (theProject.exists()) {
        theProject.open(new NullProgressMonitor());
    }
} catch (CoreException err) {
    err.printStackTrace();
}

También podría querer abrirá un editor :

IWorkbenchWindow dw = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
try {
   if (dw != null) {
   IWorkbenchPage page = dw.getActivePage();
   if (page != null) {
    IDE.openEditor(page, file, true);                   
   }
}
} catch (PartInitException e) {

}

Más generalmente, eclipse.dev.org puede ser una buena fuente de consejos sobre ese tema.


Desde 2004, CDT tiene opciones se pueden modificar a través de la Configuración preferida tienda (ICSettingsStorage). Puede ser que puede ayudar.


En cuanto al controlador paso a paso, tenga cuidado con las de preferencias de descubrimiento .
Soy no está seguro de que hay una API paso a paso , pero es posible que mirar las fuentes para más pistas .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top