Contents |
Hay varias cosas que es útil configurar en Eclipse, independientemente del lenguaje que elijan.
Una de las configuraciones más importantes, es el compilador que estará usando Eclipse para nuestro código Xtend. En el ejemplo de arriba, hemos configurado un compilador de Java 1.11 (consultá con tus docentes qué versión de JDK hay que usar). Es preciso recalcar que deben apuntar a una JDK (con el compilador) y no a una JRE o no podrán ejecutar ningún programa Xtend, ni Java.
A continuación te dejamos una animación que muestra cómo configurar otra JDK, para lo cual hay que pasar el directorio raíz (no el bin
donde residen el compilador y los demás programas de Java).
Para que cuando hagas New > File te aparezcan las clases y las interfaces Xtend, Window > Customize Perspective… > solapa Menu Visibility > expandís File > New > y seleccionás las de Xtend (Xtend class, inteface, annotation y enum).
Algunas versiones de Eclipse utilizan por defecto compatibilidad con el compilador Java 1.4, algo que no es conveniente si vamos a trabajar con herramientas como Generics o Annotations que vienen a partir del JDK 1.5.
Para esto deben ir a Window Preferences > Java > Compiler > y donde dice JDK Compliance subir la propiedad “Compiler compliance level” de 1.4 a una superior.
En caso contrario al bajar proyectos compilados en JDKs superiores aparecerán mensajes de error como estos:
Syntax error, annotations are only available if source level is 1.5 or greater
Syntax error, parameterized types are only available if source level is 1.5 or greater
Para no tener problemas con los tildes y demás caracteres especiales al bajarse los ejemplos conviene tener sincronizado el mismo encoding. Para eso, desde la barra de menú: Window > Preferences, filtrar por “encoding” y cambiar todos a “UTF-8” o “ISO 10646/Unicode(UTF-8)”. Por ejemplo: En General > Workspace > Text file encoding, seleccionar Other > UTF-8. Aplicar cambios.
Si van a programar en español, es recomendable desactivar el diccionario (viene por defecto en inglés). Para ello filtrar en el menú por la palabra “spell” y desactivar la corrección ortográfica (Spelling > desactivar el check Enable spell checking). Aplicar cambios.
Otra opción es que se bajen un diccionario español de internet y lo configuren.
En varios lenguajes de la JVM nos aparecerá una molesta advertencia sobre la serialización de clases, algo que por el momento no necesitamos. Conviene desactivar el warning default de clases serializables que no definan un identificador de versión: Window > Preferences, filtrar por “Serializable”, solapa Java / Compiler / “Errors/Warnings”, “Potential programming problems”, y se setea el valor de “Serializable class without serialVersionUID” a Ignore. Aplicar cambios.
Opcionalmente, nosotros recomendamos subir a “Warning” estas dos configuraciones
En algunas distribuciones de Linux existe un shortcut por defecto que es Ctrl + Space, que colisiona con el shortcut del content assist de Eclipse . Para solucionar el problema, hay que deshabilitar el binding: en Ubuntu: System Settings -> Keyboard-> Shortcuts en Lubuntu: click en el logo que esta abajo a la izquierda -> Preferencias -> Metodos de entrada por Teclado y se cambia a “Disabled”
Window > Preferences > Maven, debe tener esta configuración:
Download repository index on startup
, al igual que Update Maven projects on startup
deben estar destildados para evitar demoras al iniciar tu EclipseDownload Artifact Sources
y Download Artifact JavaDoc
deben estar tildados, porque eso descargará documentación y fuentes de los componentes que uses, algo bastante útil cuando necesitamos solucionar un error o entender de qué manera comunicarnos con él.Offline
debe estar destildada, o no intentará conectarse a Internet para bajar componentes.En un JDK estándar hay muchos paquetes, y sólo usaremos unos pocos. Es recomendable indicarle a Eclipse que no nos sugiera paquetes que casi con seguridad no usaremos.
Para eso, en Java > Appearance > Type Filters, agregar las siguientes expresiones:
bash
sun.*
*.internal.*
edu.emory.mathcs.backport.*
java.awt.*
java.swing.*
org.omg.*