2009-09-30 11 views
7

Acaba de añadir plug-in Mercurial (1.4.12.86) a Eclipse (Versión Web Dev, Build ID: 20090920 hasta 1017), y consiguió este error en el arranque:¿Cómo configurar adecuadamente el complemento Mercurial para Eclipse?

Cannot run program "hg": CreateProcess error=2, The system cannot find the file specified 

encontrado un thread on the same problem, pero no tienen idea de cómo arreglalo.

Aquí hay más del registro:

!SUBENTRY 1 com.vectrace.MercurialEclipse 4 -100 2009-09-29 22:41:09.150 
!MESSAGE Cannot run program "hg": CreateProcess error=2, The system cannot find the file specified 
!STACK 0 
java.io.IOException: Cannot run program "hg": CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessBuilder.start(Unknown Source) 
    at com.vectrace.MercurialEclipse.commands.AbstractShellCommand.executeToStream(AbstractShellCommand.java:191) 
    at com.vectrace.MercurialEclipse.commands.AbstractShellCommand.executeToBytes(AbstractShellCommand.java:139) 
    at com.vectrace.MercurialEclipse.commands.AbstractShellCommand.executeToBytes(AbstractShellCommand.java:126) 
    at com.vectrace.MercurialEclipse.commands.HgDebugInstallClient.debugInstall(HgDebugInstallClient.java:24) 
    at com.vectrace.MercurialEclipse.MercurialEclipsePlugin.checkHgInstallation(MercurialEclipsePlugin.java:117) 
    at com.vectrace.MercurialEclipse.preferences.GeneralPreferencePage$LabelDecoratorRadioGroupFieldEditor.doStore(GeneralPreferencePage.java:55) 
    at org.eclipse.jface.preference.FieldEditor.store(FieldEditor.java:680) 
    at org.eclipse.jface.preference.FieldEditorPreferencePage.performOk(FieldEditorPreferencePage.java:343) 
    at org.eclipse.jface.preference.PreferencePage.performApply(PreferencePage.java:432) 
    at org.eclipse.jface.preference.PreferencePage$2.widgetSelected(PreferencePage.java:281) 
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:228) 
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003) 
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3880) 
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3473) 
    at org.eclipse.jface.window.Window.runEventLoop(Window.java:825) 
    at org.eclipse.jface.window.Window.open(Window.java:801) 
    at org.eclipse.ui.internal.dialogs.WorkbenchPreferenceDialog.open(WorkbenchPreferenceDialog.java:211) 
    at org.eclipse.ui.internal.OpenPreferencesAction.run(OpenPreferencesAction.java:65) 
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:498) 
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584) 
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501) 
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411) 
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84) 
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1003) 
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:3880) 
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3473) 
    at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:2405) 
    at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2369) 
    at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2221) 
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:500) 
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332) 
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:493) 
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149) 
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:113) 
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:194) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110) 
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:368) 
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:179) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:559) 
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:514) 
    at org.eclipse.equinox.launcher.Main.run(Main.java:1311) 
Caused by: java.io.IOException: CreateProcess error=2, The system cannot find the file specified 
    at java.lang.ProcessImpl.create(Native Method) 
    at java.lang.ProcessImpl.<init>(Unknown Source) 
    at java.lang.ProcessImpl.start(Unknown Source) 

Respuesta

11

¿Te ha instalado localmente mercurial? es decir. ¿Puedes ejecutar hg desde la línea de comando/caja dos? Si no, debes comenzar con eso, obtenerlo del sitio web de Mercurial.

+0

que era una solución fácil :) thanx –

+0

aquí está el comando para instalar el programa 'hg' desde la terminal: sudo apt-get install mercurial –

+0

FYI: esa corrección funcionó para "Eclipse Indigo Service Release 1" ejecutándose en " Ubuntu 11.10 " –

3

Puede tener mercurial instalado localmente en Windows, pero aún tiene que reiniciar Windows desde que lo instaló. Después de reiniciar, el complemento eclipse podrá encontrar la instalación mercurial.

1

En realidad, no del todo. El complemento Eclipse Mercurial requiere que instales las utilidades de línea de comando hg, que son programas de Python. Eso significa que tienes que instalar Python (mínimo de 2.6). Eso significa que Eclipse tendrá problemas para ejecutar una secuencia de comandos de Python hasta que tenga que ejecutar un programa que Eclipse entiende (como una secuencia de comandos por lotes de DOS) que ejecuta la secuencia de comandos hg python.

Luego de todo eso, quizás eventualmente puedas verificar cosas (copiar, clonar como lo llamen en el mundo de Mercurial).

Cuestiones relacionadas