Si hago un refactorizar cambie en algo, se trata de hacerlo por un momento, pero luego simplemente vuelve de nuevo a lo que era llamado antes. No hay errores o cualquier indicación de que algo está mal se muestra.


Acabo de reiniciar Eclipse y ahora es aún peor. Antes, al menos la selección de Refactorizar > cambiar el nombre de sería «cuadro», el nombre y pretender que permite hacer un refactorizar. Ahora, después de reiniciar, seleccionar Refactorizar > cambiar el nombre de no hace nada.

Win7 64 bits

Eclipse Indigo construir 20110615-0604

  • ¿Qué son la vista de usted? Cuáles son usted que el cambio de nombre, y para qué? Usted sólo tiene que dar más información si usted realmente esperar un poco de ayuda…
  • Compruebe también si el proyecto tiene algún error de compilación. A veces con errores de compilación no vamos a refactorizar cosas.
  • Esto me pasó al intentar cambiar el nombre de un método Javascript. JSDT está instalado. Eliminando y añadiendo proyecto no ayuda.

12 Comentarios

  1. 5

    Tratar de eliminar el proyecto de Eclipse (no borrar el contenido del proyecto en el disco) y, a continuación, vuelva a cargarlo.

  2. 4

    Quería añadir un poco de información a algunas otras respuestas aquí.

    Archenoth la respuesta puntos, usted puede conseguir más información de la ejecución de vista previa en la operación de cambio de nombre. Me tomó un tiempo para averiguar cómo obtener la vista previa: tipo de cambiar el nombre de la pulsación de tecla una segunda vez para obtener el cuadro de diálogo. A veces, la vista previa no dar la información de error (y tampoco lo hizo el rápido cambiar el nombre sin el ppoup) pero al hacer clic en ACEPTAR en el cuadro de diálogo hizo decir más.

    MutantXenu información encontrada en los registros en los archivos en el área de trabajo, pero también puede llegar a estos dentro de Eclipse yendo a la vista Registro de Errores (desde Cmd-3)

    Cuando he tenido este problema, el registro de errores me señaló a este error de aserción: «la Búsqueda de declaración de método no encontrar elemento original», lo que llevó a algunos bugs sin resolver. (Me estoy quedando en la Kepler, pero el problema es aparentemente difícil de replicar y no veo evidencia de que sea resuelto. Ver aquí y aquí.)

    Usted puede ver si usted está experimentando este error específico de seleccionar el método y el uso de Cmd-G (o Ctrl-G: Search > Declaraciones > área de trabajo). Eclipse es incapaz de encontrar el método que se está tratando de cambiar el nombre y la búsqueda termina con las manos vacías.

    Mi caso sugiere que es posible que el error podría tener que ver con nombres idénticos métodos en clases diferentes. Cuando el problema está produciendo con un método, que no afecta a la mayoría de los otros.

    De actualización, Proyecto->Limpio, y reiniciar Eclipse no eran útiles para mí.
    Kevin respuesta trabajado para mí: «Tratar de eliminar el proyecto de Eclipse (no borrar el contenido del proyecto en el disco) y, a continuación, vuelva a cargarlo.»

  3. 3

    Mientras que el cambio de nombre de los métodos directamente en el editor no funciona en casos muy raros y, a continuación, el IDE restaura el original nombre de método después de pulsar la tecla intro – una especie de «agnóstico» modo :-), cuando hago la misma a través de la Refactorización -> Cambio Methode Firma, en la esquina superior derecha puedo cambiar el nombre del método, luego de recibir un detallado y completo mensaje de error: «ha producido Una excepción inesperada al realizar la refactorización… Razón: anónimo #1 en …. en lambda #1 … en … la Copia de Trabajo … no existe.»

    Esto indica, que el cambio de nombre de métodos desencadena este fracaso, cuando el método se cambió el nombre se utiliza en el contexto de una expresión lambda o clase anónima.

    Para revisar, comentar la aparición en el lambda o clase anónima, la refactorización/renombrar a continuación, podría funcionar como se esperaba, como lo hizo en mi caso.

  4. 1

    He tenido este problema con Eclipse Helios. Me miré en el .los metadatos directorio del área de trabajo y se abrió .archivo de registro. Tenía una muy larga cadena de referencias relacionadas con el error, pero las partes pertinentes de los que fueron:

    java.lang.NoClassDefFoundError: org/eclipse/jdt/core/IMethod

    y

    java.lang.reflejar.InvocationTargetException en
    org.eclipse.jface.operación.ModalContext.ejecutar(ModalContext.java:421)
    en
    org.eclipse.jface.de la ventana.ApplicationWindow$1.ejecutar(ApplicationWindow.java:759)
    en
    org.eclipse.swt.personalizado.BusyIndicator.showWhile(BusyIndicator.java:70)
    en
    org.eclipse.jface.de la ventana.ApplicationWindow.ejecutar(ApplicationWindow.java:756)
    en
    org.eclipse.la interfaz de usuario.interna.WorkbenchWindow.ejecutar(WorkbenchWindow.java:2606)
    en
    org.eclipse.jdt.internal.ui.refactoring.RefactoringExecutionHelper.perform(RefactoringExecutionHelper.java:191)
    en
    org.eclipse.jdt.internal.ui.refactoring.RefactoringExecutionHelper.perform(RefactoringExecutionHelper.java:151)
    en
    org.eclipse.jdt.la interfaz de usuario.la refactorización.RenameSupport.realizar(RenameSupport.java:197)
    en
    org.eclipse.jdt.interna.la interfaz de usuario.la refactorización.reorg.RenameLinkedMode.doRename(RenameLinkedMode.java:361)
    en
    org.eclipse.jdt.internal.ui.refactoring.reorg.RenameLinkedMode$EditorSynchronizer.left(RenameLinkedMode.java:119)
    en
    org.eclipse.jface.texto.enlace.LinkedModeModel.salida(LinkedModeModel.java:341)
    en
    org.eclipse.jface.texto.enlace.LinkedModeUI$4.ejecutar(LinkedModeUI.java:1194)
    en org.eclipse.swt.los widgets.RunnableLock.ejecutar(RunnableLock.java:35) a
    org.eclipse.swt.los widgets.Sincronizador.runAsyncMessages(Sincronizador.java:134)
    en
    org.eclipse.swt.los widgets.Pantalla.runAsyncMessages(la Pantalla.java:4041)
    en org.eclipse.swt.los widgets.Pantalla.readAndDispatch(la Pantalla.java:3660)

    Fui a Ayuda > Instalar Nuevo Software > Lo que ya está instalado y, a continuación, selecciona todo lo relacionado con la org.eclipse.swt y hacer clic en Desinstalar. Después de reiniciar Eclipse, el problema desapareció y yo era capaz de refactorizar /cambiar el nombre de nuevo normalmente.

    • Mismo aquí con Kepler
  5. 1

    La refactorizar no funcionará si hay errores en su proyecto.

    Corregir los errores, o simplemente un comentario fuera de la sección, que se detecta como un error en el fin de ejecutar el refactorizar.

    Esto funcionó para mí.

  6. 1

    He estado luchando con este tema también. Cuando miré en el Registro de Error de la Vista de Eclipse, me di cuenta de que cada vez que he intentado cambiar el nombre de una variable o un método, yo estaba recibiendo este tipo de excepción:

    java.lang.reflect.InvocationTargetException at 
    org.eclipse.jface.operation.ModalContext.run(ModalContext.java:421) at 
    org.eclipse.jface.window.ApplicationWindow$1.run(ApplicationWindow.java:759) at
    org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70) at 
    org.eclipse.jface.window.ApplicationWindow.run(ApplicationWindow.java:756) at
    org.eclipse.ui.internal.WorkbenchWindow.run(WorkbenchWindow.java:2606) at 
    org.eclipse.jdt.internal.ui.refactoring.RefactoringExecutionHelper.perform(RefactoringExecutionHelper.java:191) at
    org.eclipse.jdt.internal.ui.refactoring.RefactoringExecutionHelper.perform(RefactoringExecutionHelper.java:151) at
    org.eclipse.jdt.ui.refactoring.RenameSupport.perform(RenameSupport.java:197) at
    org.eclipse.jdt.internal.ui.refactoring.reorg.RenameLinkedMode.doRename(RenameLinkedMode.java:361) at
    org.eclipse.jdt.internal.ui.refactoring.reorg.RenameLinkedMode$EditorSynchronizer.left(RenameLinkedMode.java:119) at 
    org.eclipse.jface.text.link.LinkedModeModel.exit(LinkedModeModel.java:341) at 
    org.eclipse.jface.text.link.LinkedModeUI$4.run(LinkedModeUI.java:1194) at
    org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35) at
    org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:134) at 
    org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4041) at 
    org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3660)

    Me di cuenta de que todo empieza desde SWT bibliotecas. Trató de actualización de la SWT, pero por algunas razones no he podido aún encontrar SWT instalado.
    Así que simplemente he instalado SWT Herramientas 3.106.0.v20170503-0851 a través de Help -> Instalar nuevo Software, lo que felizmente resuelto el problema.

    • Bienvenido a StackOverflow! No es claro para mí que su respuesta coincide con la pregunta que se formuló. Si lo hace, podría por favor hacer la conexión más explícita? Gracias.
    • Usted puede conseguir el sitio url a utilizar en la Ayuda > Install_New_Software desde aquí: eclipse.org/swt/updatesite.php – he utilizado el hito-actualización del sitio: download.eclipse.org/eclipse/updates/milestones
    • Se hace coincidir con la pregunta y resuelto el problema para mí. Este seguimiento de la pila viene de un error de registro de la ventana de eclipse. Cuando se utiliza el cambio de firma o de la Refactorizar>cambiar el nombre,haga clic en Opciones, informa del error y le dice que mire en el Error-Log (llanura sin cambiar el nombre de un cuadro de diálogo sólo se ejecuta un poco y luego vuelve mi cambio y los informes de nada). Este seguimiento de la pila muestra un particular de nombre operación de excepción. Usted puede decirle al seguimiento de la pila de partidos, porque se ha RefactoringExecutionHelper y RenameLinkedMode.doRename en ella.
    • Ok, después de esta solucionado mi problema, he cambiado el nombre de un par de métodos y tiene el mismo error de nuevo. Reiniciar Eclipse se corrigió. Tenga en cuenta que también he tenido que reiniciar Eclipse primera vez después de la instalación de SWT.
  7. 0

    Yo estaba viendo exactamente el mismo problema como el OP, cuando yo estaba tratando de cambiar el nombre de ambas variables, y los nombres de método. Después me reinicia Eclipse, la Refactorizar->cambiar el nombre de la funcionalidad funcionaba correctamente.

  8. 0

    Con 4.4 (Luna), tuve la cruz-proyecto de refactorización problemas después de la gran refactorings – supresión de la /.los metadatos/.plugins/org.eclipse.jdt.core
    carpeta fija que para mí

  9. 0

    Si algo no demasiado evidente hace un refactorizar falla, usted puede buscar problemas por intentar vista previa de la refactorizar en lugar de tratar de ejecutarlo.

    Como Dicky Moore mencionó, no se puede refactorizar con errores en su proyecto… Pero estos no siempre son errores de código o construir la ruta de los problemas que Eclipse marcas. Así que a veces no parece como si usted tiene alguna errores y va a fallar. «Vista previa», como se mencionó anteriormente, se mostrarán estos problemas en un diálogo de error, incluso si ellos nunca aparecen en otros lugares.

    Partir de ahí, usted puede configurar su proyecto de corregir los errores (la más común es que el refactorizar intenta explicar una carpeta de salida que no debería, lo que puede ser corregido mediante la exclusión de la carpeta en su Build Path > Source configuración). o desinstalación de la problemática de los plugins.

  10. 0

    Tenido el mismo problema:

    • clic izquierdo sobre el nombre de la propiedad en la clase de java
    • clic derecho
    • refactorizar
    • cambiar el nombre de
    • hacer el cambio de nombre
    • presione entrar
    • verde de la barra de progreso aparece en el menú de pie de página, pero no termina de
    • para recuperar la tengo que matar eclipse (se puede tratar de salir pero va a colgar al guardar workbench estado)

    Estoy ejecutando esto en windows:

    • Versión: Kepler Service Release 2
    • Id de Build: 20140224-0627

    I ‘fijos’ en el comportamiento por:

    • hacer un pequeño cambio en el archivo de
    • guardar el archivo
    • reintenta la refactorizar y funcionó bien (aunque no es un incómodo retardo de espera para la refactorizar para completar alrededor de cinco segundos)

    No había errores en el proyecto, nada obvio en los registros cuando se cuelga y eliminación/importar el proyecto desde el área de trabajo no funciona bien (y eliminar .classpath .proyecto y .configuración antes de volver a importar).

  11. 0

    Tratar el siguiente (sólo funcionó para mí):

    1. Eliminar el proyecto
    2. Crear un nuevo proyecto java con el mismo nombre
  12. 0

    Una rápida solución que funcionó para mí:

    • Agregar el modificador static para su firma de método («fuerzas» error de compilación a través de sólo en tiempo de compilación en todas las referencias)
    • Refactorizar el nombre del método (los errores siguen siendo)
    • Quitar el modificador static (recompilaciones con cambiar el método de firma, errores del pasado…)

Dejar respuesta

Please enter your comment!
Please enter your name here