CTRL-click funciona en cualquier lugar
CTRL-click que lo lleva a donde se define el objeto cliqueado funciona en todas partes, no solo en las clases y variables Java en el código Java, sino en la configuración Spring (puede hacer clic en el nombre de la clase, o la propiedad, o el nombre del bean), en Hibernate (usted puede hacer clic en el nombre de propiedad o clase, o en el recurso incluido), puede navegar con un clic desde la clase de Java hasta donde se utiliza como Spring o Hibernate bean; hacer clic en la etiqueta JSP o JSTL incluida también funciona, ctrl-clic en la variable o función de JavaScript lo lleva al lugar donde está definido o muestra un menú si hay más de un lugar, incluidos otros archivos .js y código JS en HTML o JSP archivos.
Autocompletar para muchos idiomas
Hibernar
Autocompletar en expresiones HSQL, en la configuración de Hibernate (incluidos los nombres de clase, propiedad y columna de base de datos), en la configuración de Spring
<property name="propName" ref="<hit CTRL-SPACE>"
y le mostrará una lista de esos beans que puede inyectar en esa propiedad.
Java
Autocompletado muy inteligente en código Java:
interface Person {
String getName();
String getAddress();
int getAge();
}
//---
Person p;
String name = p.<CTRL-SHIFT-SPACE>
y muestra SOLO getName () , getAddress () y toString () (solo son compatibles por tipo) y getName () es el primero en la lista porque tiene un nombre más relevante. La última versión 8 que todavía está en EAP tiene aún más autocompletado inteligente.
interface Country{
}
interface Address {
String getStreetAddress();
String getZipCode();
Country getCountry();
}
interface Person {
String getName();
Address getAddress();
int getAge();
}
//---
Person p;
Country c = p.<CTRL-SHIFT-SPACE>
y silenciosamente lo completará automáticamente
Country c = p.getAddress().getCountry();
Javascript
Autocompletar inteligente en JavaScript.
function Person(name,address) {
this.getName = function() { return name };
this.getAddress = function() { return address };
}
Person.prototype.hello = function() {
return "I'm " + this.getName() + " from " + this.get<CTRL-SPACE>;
}
y muestra SOLO getName () y getAddress () , no importa cómo puede obtener * los métodos que tiene en otros objetos JS en su proyecto, y ctrl-click en this.getName () lo lleva a donde está definido, incluso si Hay algunas otras funciones getName () en su proyecto.
HTML
¿Mencioné autocompletar y Ctrl-clic en las rutas a los archivos, como <script src = "", <img src = "", etc.
Autocompletar en atributos de etiqueta HTML. Autocompletar en el atributo de estilo de etiquetas HTML, tanto nombres de atributos como valores. Autocompletar en atributos de clase también.
Escriba <div class = "<CTRL-SPACE> y le mostrará una lista de las clases CSS definidas en su proyecto. Elija una, presione Ctrl y haga clic en ella y será redirigido a donde está definida.
Fácil resaltado de idioma propio
La última versión tiene inyección de idioma, por lo que puede declarar que su etiqueta JSTL personalizada generalmente contiene JavaScript y resaltará JavaScript dentro de ella.
<ui:obfuscateJavaScript>function something(){...}</ui:obfuscateJavaScript>
Búsqueda indexada en todos los proyectos.
Puede usar Buscar usos de cualquier clase o método Java y encontrará dónde se usa, incluidas no solo las clases Java, sino también Hibernate, Spring, JSP y otros lugares. El método de cambio de nombre refactoriza el método de cambio de nombre no solo en las clases de Java, sino también en cualquier lugar, incluidos los comentarios (no se puede estar seguro de si la cadena en los comentarios es realmente el nombre del método, por lo que preguntará). Y encontrará solo su método, incluso si hay métodos de otra clase con el mismo nombre. Buena integración de control de fuente (¿SVN admite listas de cambios? IDEA las admite para cada control de fuente), capacidad de crear un parche con sus cambios para que pueda enviar sus cambios a otro miembro del equipo sin comprometerlos.
Depurador mejorado
Cuando miro HashMap en la ventana de observación del depurador, veo una vista lógica: claves y valores, la última vez que lo hice en Eclipse mostraba entradas con hash y campos siguientes. Realmente no estoy depurando HashMap , solo quiero mirar Contiene.
Validación de configuración de Spring e Hibernate
Valida la configuración de Spring e Hibernate justo cuando la edita, por lo que no necesito reiniciar el servidor para saber que escribí mal el nombre de la clase o agregué el parámetro del constructor para que mi Spring cfg no sea válido.
La última vez que lo intenté, no pude ejecutar Eclipse en Windows XP x64.
y le sugerirá person.name o person.address . Presione Ctrl y haga clic en person.name y lo llevará al método getName () de la clase Person .
Escriba Pattern.compile("");
put \\ allí, presione CTRL-SPACE y vea sugerencias útiles sobre lo que puede poner en su expresión regular. También puede usar la inyección de idioma aquí: defina su propio método que toma el parámetro de cadena, declare en el cuadro de diálogo de opciones de IntelliLang que su parámetro es una expresión regular, y también le dará autocompletar allí. No hace falta decir que resalta las expresiones regulares incorrectas.
Otras características
Hay pocas características que no estoy seguro están presentes en Eclipse o no. Pero al menos cada miembro de nuestro equipo que usa Eclipse, también usa alguna herramienta de fusión para fusionar cambios locales con cambios del control de origen, generalmente WinMerge. Nunca lo necesito, fusionarme en IDEA es suficiente para mí. Con 3 clics puedo ver la lista de versiones de archivos en el control de código fuente, con 3 clics más puedo comparar versiones anteriores o anteriores y actuales, y posiblemente fusionarlas.
Permite especificar que necesito todos los archivos .jars dentro de la WEB-INF\lib
carpeta, sin elegir cada archivo por separado, por lo que cuando alguien confirma un nuevo archivo .jar en esa carpeta, lo recoge automáticamente.
Lo mencionado anteriormente es probablemente el 10% de lo que hace. No uso Maven, Flex, Swing, EJB y muchas otras cosas, por lo que no puedo decir cómo ayuda con ellos. Pero lo hace.