Cómo compartir la configuración de Eclipse en diferentes espacios de trabajo

130

Estoy usando Eclipse (PDT) como IDE primario en diferentes máquinas. (como en casa, computadora portátil, en la oficina, etc.). ¿Cómo podría compartir el Eclipse y la configuración del proyecto pragmáticamente entre varias computadoras? ¿Debo controlar la versión o hay alguna forma más fácil de hacerlo?

¿Cómo se asegura de usar la misma configuración buena y antigua, incluso actualizada, en todas sus computadoras?

Erenon
fuente
Tuve todo tipo de problemas para compartir código en un solo espacio de trabajo usando Dropbox. Me inclinaría por tener múltiples espacios de trabajo, uno para cada máquina, y sincronizaría el grupo de espacios de trabajo usando Dropbox.
djangofan
3
Antigua pregunta que sé, pero para la posteridad, encontré esta publicación de blog muy útil: mcuoneclipse.wordpress.com/2012/04/04/… (No es mi publicación :-)
Stewart
Siempre hay complicaciones en el entorno de Windows. Verificar la configuración del espacio de trabajo en el control de origen no es una respuesta. La configuración del control de origen forma parte de la configuración del espacio de trabajo.
Chris Topinka

Respuestas:

4

En realidad, puede establecer muchas configuraciones específicas del proyecto que se pueden verificar en el control de origen. Para proyectos pequeños, esto funciona muy bien. Para proyectos más grandes, decidimos tener un solo archivo que usamos para todos nuestros proyectos y lo registramos en un proyecto separado de "activos" que mantenía las cosas que los desarrolladores necesitaban para comenzar a trabajar en nuestro proyecto. Esto también incluía cosas como licencias y otros archivos requeridos.

Topher Fangio
fuente
45
Si bien esta es la respuesta aceptada, definitivamente debe desplazarse hacia abajo y mirar las otras respuestas, ya que tienen información adicional.
Topher Fangio
1
@erenon: ¿Puedes desmarcar esto como la respuesta aceptada y elegir una diferente y más relevante? Los otros incluyen mucha más información, pero no puedo eliminar esta respuesta si es aceptada.
Topher Fangio
176

Compartir configuraciones específicas de eclipse en espacios de trabajo :

  1. Ir ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings
  2. Copie todo en el directorio anterior a ${new_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings

Esto se asegurará de que ${new_workspace}tenga la misma configuración que${old_workspace}

Espero que esto ayude. Actualización en caso de cualquier problema.

pico
fuente
8
Personalmente, tengo esas carpetas enlazadas a Dropbox y también los perfiles RSE están enlazados. La configuración general de la configuración del eclipse también se puede exportar desde ide
Anton S
55
Comenzaré con esto, pero lamentablemente hay muchas más configuraciones fuera de este directorio que me gustaría sincronizar.
David Harkness
@DavidHarkness: por favor explique - ¿qué configuración - dónde? Puede publicar una respuesta aquí , estoy preguntando entre otros: "¿sería seguro y suficiente para vincular el \.metadata\.plugins\org.eclipse.core.runtime\.settings directory?" - a pico: no es tan simple como eso - ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingscontiene también la configuración del espacio de trabajo y tiene otras peculiaridades - vea mi análisis aquí
Mr_and_Mrs_D
Para copiar la carpeta, utilice Robocopy: stackoverflow.com/questions/472692/…
weberjn
1
Para mantenerlos sincronizados, considere Unison: cis.upenn.edu/~bcpierce/unison
Alice Purcell
114

Otra opción es exportar / importar:

  1. Desde su espacio de trabajo existente File->Export...->General->Preferences, marque Exportar todo y elija el archivo para guardarlos (por ejemplo, prefs.epf)
  2. Inicie Eclipse en un nuevo espacio de trabajo, File->Import...->General->Preferenceselija su archivo (prefs.epf), marque importar todo

Eso funcionó muy bien para el autor original de este consejo: tenía su formato de código, estilo de código, repositorios svn, preferencias jres importadas.

Editar: en Eclipse Juno esto funciona mal. Algunas preferencias silenciosamente no se transfieren, como las acciones de guardar.

Anthony Dahanne
fuente
2
Funciona igual de bien con Eclipse STS (spring Tool Suite) 3.4
publicado el
Trabajó en Eclipse Luna
GP cyborg
1
Uno podría hacer esto y lo que Peakit dijo en su respuesta. Espero que esta combinación de acciones sea suficiente para realmente exportar todo .
Nikos
8

Es un proyecto relativamente nuevo, pero parece que Eclipse Oomph fue creado exactamente por esta razón. A través de esta herramienta, puede crear una configuración única que se puede compartir con otros. No lo he usado (todavía), pero estoy planeando:

https://projects.eclipse.org/projects/tools.oomph

HDave
fuente
Yatta Profiles se basa en Oomph / Eclipse Installer y hace que compartir sea un poco más fácil.
Bernhard Stadler
1
@BernhardStadler Yatta no transfiere preferencias.
ThomasMcLeod
Yatta puede recordar los valores de preferencia predeterminados: las preferencias del espacio de trabajo se pueden registrar con el Grabador de preferencias, y para las preferencias del proyecto no necesita herramientas adicionales, ya que puede agregarlas a su SCM. La configuración del espacio de trabajo de desarrollo con un solo clic para uso principal para equipos con el objetivo de minimizar los tiempos de configuración, pero también es posible sincronizar perfiles privados entre diferentes computadoras. Nunca lo he intentado yo mismo, pero según su página web, posiblemente sea para aplicar actualizaciones de perfiles en línea, por lo que debería ser posible utilizar perfiles privados en línea como mecanismo de sincronización.
Bernhard Stadler
7

Tenía que trabajar en múltiples espacios de trabajo simultáneamente y había muchas preferencias que establecer cada vez que creaba un nuevo espacio de trabajo. Creé un espacio de trabajo de plantilla y creé todas las configuraciones requeridas en ese espacio de trabajo de plantilla. Cada vez que creo un nuevo espacio de trabajo, creo un enlace simbólico al {new_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingsque apuntar {template_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settings. Por lo tanto, cuando edite cualquier preferencia en cualquiera de los espacios de trabajo, se replicará en todos los demás espacios de trabajo.

Creé este alias de función en mi .profile de modo que una vez que creo un nuevo espacio de trabajo, ejecuto esta función en mi símbolo del sistema con mi nuevo nombre de espacio de trabajo como argumento para que se cree el enlace.

function eclset(){
    present_dir=`pwd`;
    cd  {parent_to_workspace}/$1/.metadata/.plugins/org.eclipse.core.runtime ; 
    rm -rf .settings ; 
    ln -s {parent_to_workspace}/template/.metadata/.plugins/org.eclipse.core.runtime/.settings .settings;
    cd $present_dir;
}
Mowgli
fuente
En realidad, eso es lo que también quería hacer (en Windows), pero hay complicaciones: vea mi respuesta aquí
Mr_and_Mrs_D
3

A partir de Eclipse Neon (y posiblemente también de Mars), puede copiar los siguientes dos directorios para compartir su banco de trabajo y configuraciones / preferencias entre sus diferentes espacios de trabajo:

    [workspace]/.metadata/.plugins/org.eclipse.core.runtime/.settings
    [workspace]/.metadata/.plugins/org.eclipse.e4.workbench
Antonio Malcolm
fuente
¿Realmente se introdujo en Neon? ¿Hay un registro de cambios / léame o alguna otra información que lo confirme?
Danijel
Por lo general, los desarrolladores tienen su propio repositorio GIT y no se comparten, por lo que la lista es: 1. [espacio de trabajo] /. Metadata / .plugins / org.eclipse.core.runtime / .settings - Excepto [espacio de trabajo] /. Metadata / .plugins /org.eclipse.core.runtime/.settings/org.eclipse.egit.core.prefs 2. [espacio de trabajo] /. metadata / .plugins / org.eclipse.e4.workbench
Timo Riikonen
2

Hay dos preguntas aquí. Primero, hay definiciones de proyecto, los archivos .project y configuraciones específicas del proyecto. Personalmente, me gustan los que están en mi control de fuente, ya que hace que verificar un proyecto y configurar un IDE sea mucho más fácil.

En segundo lugar, tiene la configuración del espacio de trabajo. Verá muchas preguntas en esta área. Sugiero echar un vistazo a Pulse : es una distribución mejorada de Eclipse que puede, entre otras cosas, guardar la configuración de su espacio de trabajo y sincronizarla con múltiples máquinas o miembros del equipo.

zvikico
fuente
1

También puede copiar los archivos .prefs de ${old_workspace}/.metadata/.plugins/org.eclipse.core.runtime/.settingsuna carpeta llamada .settings en la carpeta raíz de su proyecto y luego agregarlo a SVN (o CVS o ...)

De esa manera, la configuración se distribuirá a todos los desarrolladores junto con el código fuente durante una actualización.

Evvo
fuente
0

Yo tuve el mismo problema.

mi enfoque: almacenar datos del proyecto en un directorio administrado por owncloud

El Proyecto X se crea en la estación de trabajo A, con una ruta personalizada que apunta a un nuevo subdirectorio de mi jerarquía ownCloud. El espacio de trabajo predeterminado aún reside en el sistema de archivos de A.

Cuando estoy sentado en la estación de trabajo BI, abra el espacio de trabajo local predeterminado (local en B) y cree un nuevo proyecto utilizando las fuentes existentes en el directorio ownCloud "sincronizado".

Simplemente haga clic en actualizar cada vez que encienda eclipse y tenga los datos del proyecto actual. La sincronización se ejecuta en segundo plano automáticamente, así que tenga cuidado cuando haya terminado de trabajar para cerrar eclipse y dé a ownCloud la oportunidad de cargar los nuevos archivos en el servidor ownCloud.

Tomcat u otros servidores se ejecutan localmente, la configuración se copia manualmente entre las máquinas a través de scp. Esto sucede solo si hay cambios en la configuración del servidor, lo cual no es muy frecuente.

Todavía no tuve problemas de compatibilidad con NEON 2 (arch linux) y NEON 3 (descargue una ejecución en Debian Stretch) con diferentes JDK.

Saludos cordiales Armin

armin
fuente
0

Simplemente copie los directorios

${old_workspace}/.metadata/.plugins

de un proyecto existente al nuevo.

Eso funcionó bien en proyectos PHP (bastante simples).

Schogol
fuente
0

Puede usar Eclipstyle para clonar las preferencias de un espacio de trabajo en sus otros espacios de trabajo. También puede exportar sus preferencias y clonarlas más tarde.

Utku Ufuk
fuente