Eclipse - pas de Java (JRE) / (JDK) no pas de machine virtuelle


J'essaie de faire fonctionner Eclipse v3.5 (Galileo) à nouveau sur mon ordinateur - je l'ai déjà exécuté sans problème, mais maintenant Je continue à obtenir cette erreur:

Un environnement d'exécution Java (JRE) ou un kit de développement Java (JDK) doivent être disponibles pour exécuter Eclipse. Aucune machine virtuelle Java n'a été trouvée après avoir recherché les emplacements suivants: C:\eclipse\jre\javaw.EXE javaw dans.exe dans votre CHEMIN actuel

Je viens de faire une nouvelle installation du JDK et du SDK.

J'ai Windows 7 (x64).

Qu'est-ce qui se passe avec ça? Comment puis-je résoudre ce problème?

Je ne peux exécuter aucun des ipconfig / tracert / ou ping.

Author: Peter Mortensen, 2010-01-08

30 answers

Eclipse essaiera par défaut de se lancer avec le "java.exe" par défaut (le premier référencé par votre PATH)

Trois choses à retenir:

  • "Installer" un JRE ou un JDK peut être aussi simple que de le décompresser ou de le copier à partir d'un autre ordinateur: il n'y a pas d'étapes d'installation spéciales, et vous pouvez avoir autant de versions de JVM différentes (1.4, 5.0, 6.0...) comme vous le souhaitez," installé " (copié) presque n'importe où sur votre disque.
  • Je recommanderais de toujours exécuter Eclipse avec les dernières JREpossibles (pour bénéficier des dernières évolutions hotspot). Vous pouvez:
  • La JVM que vous référencerez dans votre session Eclipse est pas toujours celle utilisée pour lancer Eclipse car:
    • Vous avez seulement besoin d'un JRE pour lancer Eclipse, mais une fois Eclipse lancé, vous devez enregistrer un JDK pour vos projets (en particulier pour les sources Java et le débogage, également en théorie pour la compilation mais Eclipse a son propre compilateur Java) Remarque: Vous pouvez enregistrer juste un JRE dans Eclipse car il suffit de exécuter votre programme, mais encore une fois un JDK permettra plus d'opérations.
    • Même si le Java enregistré par défaut dans Eclipse est celui utilisé pour lancer la session, vous pouvez vous inscrire un ancien SDK (y compris un non-Sun) afin d'exécuter/déboguer vos programmes avec un JRE similaire à celui qui sera réellement utilisé en production.

Installé Jre


Juin 2012, jmbertucci commentaires:

J'exécute Windows 7 64 bits et j'ai installé le JRE 32 bits. J'ai téléchargé Eclipse 64 bits qui recherche un JRE 64 bits. Parce que je n'avais pas le JRE 64 bits, il a jeté l'erreur, ce qui est logique.

Je suis allé à la page d'installation du manuel Java (qui n'était pas aussi directement accessible que vous le souhaitez) et a installé la version 64 bits. Voir"Téléchargements Java pour tous les systèmes d'exploitation ". C'était tout ce dont j'avais besoin.


Avril 2016: Steve Mayne ajoute dans les commentaires:

J'ai dû éditer le fichier eclipse.ini pour référencer le chemin Java correct - Eclipse n'utilise pas du tout l'environnement PATH lorsqu'il existe une valeur dans eclipse.ini.

 210
Author: VonC, 2017-05-23 10:31:39

Il suffit de copier ce fichier :

c:/Program Files/Java/jre(5,6,7..any version)/bin/javaw.exe

Vers le dossier Eclipse

*remarque testé uniquement pour Windows

Remplacement de javaw.exe dans le dossier Eclipse

 139
Author: YouYou, 2013-03-16 04:58:25

Toutes les autres réponses sur la définition de uniquement le JAVA_HOME ne sont pas entièrement correctes. Eclipse n', à savoir pas consulter l'JAVA_HOME. Regardez de plus près le message d'erreur:

...dans votre CHEMIN actuel

Littéralement dit - PATH, pas JAVA_HOME.

Cliquez avec le bouton Droit Mon Ordinateur et choisissez Propriétés (ou appuyez sur la touche Winkey+Pause), allez à l'onglet Avancé, cliquez sur le bouton Variables d'Environnement, le les Variables du Système liste en bas sélectionnez Path (n, pas Classpath), cliquez sur Modifier et ajoutez ;c:\path\to\jdk\bin à la fin de la valeur.

Sinon et si pas, vous pouvez également ajouter JAVA_HOME variable d'environnement et d'en faire usage dans le PATH. Dans le même dialogue, cliquez sur Nouveaux et ajoutez JAVA_HOME avec la valeur de c:\path\to\jdk. Ensuite, vous pouvez ajouter ;%JAVA_HOME%\bin à la fin de la valeur du paramètre Path.

 77
Author: BalusC, 2013-06-18 16:25:32

Ouvrez les propriétés système de Windows à partir du panneau de configuration et recherchez la section Variables d'environnement:

  • Ajouter une entrée JAVA_HOME pointant vers le répertoire où le JDK est installé (par exemple C:\Program Fichiers \ Java \ jre6)
  • Recherchez l'entrée Path et ajoutez ce qui suit à la fin; % JAVA_HOME% \ bin
  • OK les changements
  • Redémarrez eclipse pour qu'il soit au courant du nouvel environnement

La plupart des outils Java seront désormais en mesure de trouver votre installation Java soit en utilisant la variable d'environnement JAVA_HOME, soit en recherchant java.exe / javaw dans.exe dans la variable d'environnement Path.

 35
Author: Rob Oxspring, 2011-05-31 12:58:53

Si vous téléchargez la version 64 bits d'Eclipse; il recherchera la version 64 bits de JRE. Si vous téléchargez la version 32 bits d'Eclipse; il recherchera la version 32 bits de JRE

Ce que j'ai fait était d'installer la version 32 et 64 bits de JRE. Vous pouvez obtenir cela sur le site SUN Oracle. Le site JAVA semble installer automatiquement la version 32 bits de Java. Je suppose que c'est à cause du navigateur Web.

 24
Author: speedbaron, 2010-11-10 20:47:33

Il s'est avéré que tout ce que je devais faire était de changer le 'path' en:

"C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem; C:\Program Fichiers(x86) \ Java; C:\Program Fichiers (x86)\Java \ jdk1.6. 0_14 \ bin "

Qui l'a fait:)

 10
Author: Wallter, 2010-01-12 15:40:51

J'ai Windows 7 64 bits, et j'ai eu ce même problème avec eclipse. Pour le faire fonctionner, j'ai dû utiliser Internet explorer (version 64 bits) pour télécharger java. C'était le seul moyen d'obtenir java pour installer une version 64 bits. Lorsque j'ai utilisé Firefox pour installer java, il a automatiquement installé une version 32 bits (tellement idiote!). Et la version Eclipse 64 bits ne détecterait pas la version java 32 bits.

 9
Author: ladookie, 2010-11-15 01:28:20

Solution en un mot:

Faites un clic droit sur Poste de travail, cliquez sur propriétés, puis Paramètres système avancés, une fenêtre Propriétés système apparaîtra, sous l'onglet Avancé, choisissez variables d'environnement, la fenêtre Variables d'environnement apparaîtra, sous la section Variables système, recherchez PATH variable, et modifiez la valeur,en la changeant (la version; jre6, jre7, etc.) en tout jre que vous utilisez, par exemple pour le mien: C:\Program Files\Java\jre7\bin

 7
Author: siaooo, 2012-12-01 08:55:24

Ne vous inquiétez pas, j'ai également été ruiné par cette erreur et fatale et quand je l'ai eu, j'étais tellement frustré même que je donnais pour laisser une programmation Android, mais je l'ai eu, Il suffit tout d'abord de copier ce code et de le coller dans votre variable système Sous path ...

C:\Program Fichiers;C:\Winnt;C:\Winnt\System32;C:\Program Fichiers \ Java\jre6\bin \ javaw.exe

Copiez maintenant le dossier" jre " de votre chemin comme si j'avais " jre " sous ce chemin

            C:\Program Files\Java

Et collez-le dans votre dossier eclipse signifie où votre eclipse.le fichier exe est placé. comme j'ai mon eclipse configuré à cet emplacement

    F:\Softwares\LANGUAGES SOFTEARE\Android Setup\eclipse

Donc, dans le dossier eclipse, collez le DOSSIER "jre". Si vous avez "jre6", renommez-le en "jre"....et exécutez votre eclipse, vous aurez la solution...

   //<<<<<<<<<<<<<<----------------------------->>>>>>>>>>>>>>>>>>>                 

AUTRE SOLUTION: 2

Si le problème ne peut pas être résolu avec les étapes ci-dessus, suivez ces étapes

  1. Copier le dossier "jre" depuis votre chemin Java comme C:\Program Fichiers \ Java \ jre6* etc, et collez - le dans votre répertoire eclipse(où est votre eclipse disponible)
  2. Allez à eclipse.ini fichier , ouvrir.
  3. Changer le répertoire de votre javaw.fichier exe comme

-vmF:\Logiciels\LANGUES SOFTEARE\Configuration Android\eclipse Indigo version 32 Bits\jre\bin/javaw.exe

Maintenant, cette fois, lorsque vous commencerez eclipse, il recherchera javaw.exe, donc il recherchera le chemin dans l'éclipse.ini, comme il est maintenant dans le même dossier donc, il va démarrer le javaw.exe et il va commencer à travailler.

Si vous avez encore une question, vous pouvez la poser à nouveau, allez simplement sur mon profil et découvrez mon identifiant e-mail. parce que j'aime le forum stack overflow, et cela a fait de moi un programmeur.*

 6
Author: Pir Fahim Shah, 2014-03-24 11:41:29

Ne comptez pas sur la variable Windows path car elle est modifiée dans presque toutes les mises à jour. Par exemple, une mise à jour java chrome (32 bits sur une machine 64 bits) remplace la JVM 64 bits à l'échelle du système par une JVM 32 bits. Notez également que cette entrée doit être le dernier de l'éclipse.ini, sinon cela ne fonctionne pas,Et - comme indiqué autrement - la variable JAVA_HOME n'est PAS évaluée par eclipse.EXE.

Même si votre JAVA_HOME et le chemin configuré sont valides, leur may a ce problème, donc le moyen le plus simple pour faire est d'ouvrir votre eclipse.ini dans votre dossier d'installation eclipse

- vm

C:\Program Les fichiers\Java \ jdk1. 7.0_71\bin \ javaw.exe

Remplacer C:\Program Les fichiers\Java \ jdk1. 7.0_71\bin \ javaw.exe avec le chemin de votre jdk ou jre

 6
Author: bowman han, 2015-06-02 07:30:55

Dans votre fichier eclipse.ini, vous devez mettre à jour le chemin d'accès à la machine virtuelle pour pointer vers le même emplacement où javaw.exe est installé sur votre machine.

 5
Author: Lavakumar Sangeetham, 2012-11-30 19:34:48

Édité mon éclipse.fichier ini pour mettre à jour le JDK nouvellement mis à jour. Auparavant, j'avais jdk1.7.0_09 et mis à jour maintenant vers jdk1.7. 0_80 et eclipse a lancé cette erreur.

Un environnement d'exécution Java (JRE) ou un kit de développement Java (JDK) doivent être disponibles pour exécuter Eclipse. Aucun La machine virtuelle Java a été trouvée après avoir recherché ce qui suit lieux: C:/Program Je n'ai jamais eu de problème.]}

Après la mise à jour eclipse.ini de,

-vm
C:/Program Files/Java/jdk1.7.0_09/bin/javaw

À

-vm
C:/Program Files/Java/jdk1.7.0_80/bin/javaw

Eclipse fonctionne bien.

 5
Author: Lucky, 2015-07-31 11:33:22

Créez un fichier batch dans le dossier eclipse et écrivez-y:

eclipse -vm C:\Sun\SDK\jdk\jre\bin\javaw.exe

Voir http://wiki.eclipse.org/FAQ_How_do_I_run_Eclipse%3F

 3
Author: houssam11350, 2011-12-17 07:21:18

Si après avoir ajouté le C:\Program Files \ Java \ jdk1. 8. 0_92\bin dans la variable PATH dans les variables d'environnement l'éclipse a donné la même erreur

Vérifiez le fichier de paramètres de configuration eclipse qui se trouve dans le dossier eclipse, vous devez voir le même chemin jdk que vous avez dans C:\program Fichiers

entrez la description de l'image ici

J'espère que cela aidera.

 3
Author: Abdelrahman Elattar, 2016-08-19 12:12:23

Quand j'ai eu un tel problème, dans mon cas, j'avais x64 JDK + JRE installé avec x86 Eclipse. Donc, l'installation de x86 JDK + JRE a résolu mon problème:) J'ai également créé jre dossier dans le dossier eclipse et copié bin dossier de mon chemin local C:\Program Files (x86)\Java\jre7 vers ..\eclipse\jre\.

 2
Author: Igor Lozovsky, 2013-03-14 08:39:51
  • SYSTÈME d'exploitation 64 bits - > Vous avez besoin de: Java 64 bits et Eclipse 64 bits
  • SYSTÈME d'exploitation 32 bits - > Vous avez besoin de: Java 32 bits et Eclipse 32 bits

Si vous mettez à jour votre version java avec la mise à jour par défaut dans votre ordinateur 64 bits (et que vous avez navigateur 32 bits), java installera la version 32 bits. Vous devriez trouver la version java 64 bits et l'installer.

 2
Author: İlker Elçora, 2014-04-25 05:00:16

J'ai eu un collègue avec ce problème exact la semaine dernière. Il l'a corrigé en installant la version x64 d'Eclipse et le JDK x64.

Edit: il a réutilisé son ancien espace de travail après avoir installé les plugins nécessaires, donc cela ne devrait pas être un problème

 1
Author: laura, 2010-01-11 15:48:00

Il existe un moyen plus simple de le faire. Il suffit d'exécuter cmd x64. Tapez cmd x64 pour rechercher la barre dans le menu démarrer ant vous le trouverez:) Ou bien, vous devez définir le chemin d'accès aux fichiers de programme (x86)... Par exemple C:\Program Fichiers (x86) \ Java \ jre6

 1
Author: Deividas M, 2010-09-30 00:06:07

Ajoutez simplement le CHEMIN JRE POUR Ex: C:\Program Files \ Java \ jre5 \ bin dans la variable d'environnement Mettez "; " entre chaque chemin. Cliquez ensuite sur l'éclipse.exe Il va travailler.....

 1
Author: karthik, 2011-01-08 17:44:51

La raison pour laquelle vous obtenez cette erreur est que eclipse a besoin d'un JRE pour se lancer, qu'il ne peut pas trouver. Le premier endroit où il recherche est le répertoire courant, puis l'éclipse.fichier ini puis enfin le chemin du système. Donc, si le il ne peut pas trouver la jvm correcte (les versions de bits sont différentes) à travers l'un de ces trois endroits, il crèches

Le moyen recommandé est de modifier l'éclipse.fichier ini et dire à eclipse où chercher exactement la vm / jre, en incluant cette ligne dans le fichier:

- vm
[chemin d'accès à votre java.exe] (qui est généralement sous "C:\Program Les fichiers \ Java \ jre7 \ bin")

PS Pour modifier l'éclipse.ini, vous devrez peut-être le déplacer, le modifier, puis le coller

Source: - wiki

 1
Author: user1995120, 2014-03-10 03:31:03

Tout d'abord merci à YouYou pour sa solution! J'ai essayé de répondre par YouYou (https://stackoverflow.com/a/14464653/801919 ). Au départ, cela n'a pas fonctionné pour moi. Voici les étapes que je devais prendre pour le faire fonctionner:

  1. Initialement, je n'avais pas Java installé sur ma nouvelle machine. Donc, j'ai dû installer cela (téléchargé à partir de: http://java.com/en/download/manual.jsp).
  2. J'utilise un système d'exploitation 64 bits. Mais, lors du téléchargement, j'ai reçu le message qui pourrait aidez-moi à choisir la version de Java à télécharger: Choose the 32-bit download to use with a 32-bit browser. Par conséquent, j'ai téléchargé la version 32 bits.
  3. Ensuite, j'ai suivi la procédure mentionnée dans https://stackoverflow.com/a/14464653/801919 , dans l'espoir d'obtenir la solution.
  4. J'ai eu une autre erreur: Java was started but returned exit code=13
  5. Ensuite, j'ai installé la version 64 bits de Java.
  6. Copié javaw.exe de cette version.

...Et Eclipse a commencé à travailler!!! Yaay!

 1
Author: Vikram, 2017-05-23 10:31:39

Eh bien, cette réponse est à ceux qui ont essayé tous les autres une toujours pas de chance, Que ce soitAndroid studio ou Eclipse je le fais habituellement quand tout le reste échoue.

  1. Trouvez votre dossier sdk Android et ouvrez le Android.chauve-souris fichier avec un éditeur de texte
  2. vous trouverez quelques commandes comme celles - ci au début du fichier,

set java_exe=

call lib\find_java.bat

if not defined java_exe goto :EOF

  1. Changez-les en

    set java_exe= le chemin d'accès à votre java.fichier exe(peut être trouvé dans votre dossier jdk/répertoire bin)>

  2. Trouvez les lignes

rem Set SWT.Jar path based on current architecture (x86 or x86_64) for /f "delims=" %%a in ('"%java_exe%" -jar lib\archquery.jar') do set swt_path=lib\%%a

  1. Remplacez-le par set swt_path=le chemin vers votre swt respectif.fichier jar, pour x86, c'est au sdk\tools\lib\x86 et x64 au sdk\tools\lib\x86_64>
  2. Enregistrez et fermez le fichier et maintenant vous êtes prêt à partir..
 1
Author: insomniac, 2014-11-18 06:41:39

Essayez de définir votre JAVA_HOME dans le bon dossier. Google pour définir des variables d'environnement dans Windows.

 1
Author: Topher Fangio, 2017-01-22 20:52:24

J'ai rencontré ce problème aussi. Mon cas est le suivant:

entrez la description de l'image ici entrez la description de l'image ici

Dans le texte:

HKEY_CURRENT_USER\Environment
    Path    REG_SZ    %JAVA_HOME%\bin;C:\ProgramFiles\nodejs

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Environment
    JAVA_HOME    REG_SZ    C:\ProgramFiles\Java\jdk
    Path    REG_EXPAND_SZ    C:\bin;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\
WindowsPowerShell\v1.0\;C:\Program Files\Intel\DMIX;c:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;C:\Progra
m Files (x86)\Perforce;C:\ProgramFiles\010 Editor;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\ProgramFiles\
Git\cmd;C:\Program Files (x86)\Skype\Phone\

C:\Users\ssfang> echo %^JAVA_HOME% = "%^JAVA_HOME%" = %%JAVA_HOME%% %JAVA_HOME%
%JAVA_HOME% = "%^JAVA_HOME%" = %C:\ProgramFiles\Java\jdk% C:\ProgramFiles\Java\jdk

J'ai trouvé que leurs types de valeur de registre Path sont différents, j'ai donc vérifié si le chemin est valide ou non par la commande suivante:

C:\Users\ssfang> where node java
C:\ProgramFiles\nodejs\node.exe
INFO: Could not find "java".

En conséquence, je réinitialise l'environnement local (utilisateur actuel) par les commandes suivantes ( Setx):

C:\Users\ssfang> setx PATH %^JAVA_HOME%\bin;"C:\ProgramFiles\nodejs"

SUCCESS: Specified value was saved.

C:\Users\ssfang> reg query HKEY_CURRENT_USER\Environment /v Path

HKEY_CURRENT_USER\Environment
    Path    REG_EXPAND_SZ    %JAVA_HOME%\bin;C:\ProgramFiles\nodejs

C:\Users\ssfang> where node java
C:\ProgramFiles\nodejs\node.exe
INFO: Could not find "java".

C:\Users\ssfang>echo %PATH%
C:\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Fi
les\Intel\DMIX;c:\Program Files (x86)\Microsoft SQL Server\90\Tools\binn\;C:\Program Files (x86)\Perforce;C:\ProgramFile
s\010 Editor;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\ProgramFiles\Git\cmd;C:\Program Files (x86)\Skype\
Phone\;%JAVA_HOME%\bin;C:\ProgramFiles\nodejs

Mais, dans le processus actuel, il ne peut pas propager ces changements à d'autres processus en cours d'exécution.

Cependant, si vous modifiez directement les variables d'environnement utilisateur dans l'Éditeur du Registre,

Ces modifications apportées aux variables d'environnement font pas entraîner un changement immédiat. Par exemple, si vous lancez un autre Invite de commande après avoir effectué les modifications, les variables d'environnement reflétera les valeurs précédentes (pas les valeurs actuelles). Les changements ne sont pas prennent effet jusqu'à ce que vous vous déconnectez puis reconnectez-vous.

Pour effectuer ces changements sans avoir à se déconnecter, diffuser un WM_SETTINGCHANGE message à toutes les fenêtres du système, de sorte que tout applications intéressées (telles que l'Explorateur Windows, le Gestionnaire de programme, Gestionnaire des tâches, Panneau de configuration, et ainsi de suite) peut effectuer une mise à jour.

Voir les détails à Comment propager des variables d'environnement au système

Ici, je donne un script powershell pour le faire:

# powershell -ExecutionPolicy ByPass -File
# Standard, inline approach: (i.e. behaviour you'd get when using & in Linux)
# START /B CMD /C CALL "foo.bat" [args [...]]
# powershell -ExecutionPolicy ByPass -WindowStyle Hidden -File myScript.ps1 


<#
Add-Type @'

public class CSharp
{
    public static void Method(object[] first, object[] second)
    {
        System.Console.WriteLine("Hello world");
    }
}
'@
$a = 1..4;
[string[]]$b = "a","b","c","d";
[CSharp]::Method($a, $b);
#>


<#

#http://stackoverflow.com/questions/16552801/how-do-i-conditionally-add-a-class-with-add-type-typedefinition-if-it-isnt-add

#Problem Add-Type : Cannot add type. The type name 'PInvoke.User32' already exists.

if (-not ("MyClass" -as [type])) {
    add-type @"
    public class MyClass { }
"@
}


p.s. there's no Remove-Type; see this answer for more on how to best work around this limitation:
http://stackoverflow.com/questions/3369662/can-you-remove-an-add-ed-type-in-powershell-again

I think it will be wanted when debugging.
It is much simpler to close a tab in Console and open new one in PowerShell_ISE.exe or close PowerShell.exe.

Or

Start-Job -ScriptBlock {
    param([uri]$url,$OutputDir)
    # download and save pages
    Invoke-RestMethod $url | Out-File "$OutputDir\$($url.Segments[-1])" -Force
} -ArgumentList $link,$OutputDir

#>
if (-not ([System.Management.Automation.PSTypeName]'PInvoke.Program').Type)
{
    $sig=@"
using System;
using System.Runtime.InteropServices;
using System.Text;
using System.Collections.Generic;

// The global namespace is the "root" namespace: global::system will always refer to the .NET Framework namespace System.

///P/Invoke (Platform Invoke)
namespace PInvoke
{
    public static class User32
    {
        /// http://www.pinvoke.net/default.aspx/Constants/HWND.html
        // public const IntPtr HWND_BROADCAST = new IntPtr(0xffff);
        /// https://msdn.microsoft.com/en-us/library/windows/desktop/ms725497(v=vs.85).aspx
        /// http://www.pinvoke.net/default.aspx/Constants/WM.html
        public const UInt32 WM_SETTINGCHANGE = 0x001A;

        // SendMessageTimeout(HWND_BROADCAST, WM_SETTINGCHANGE, 0,    (LPARAM) "Environment", SMTO_ABORTIFHUNG,    5000, &dwReturnValue);

        /// https://msdn.microsoft.com/en-us/library/windows/desktop/ms644952(v=vs.85).aspx
        /// If the function succeeds, the return value is nonzero. 
        [System.Runtime.InteropServices.DllImport("user32.dll", EntryPoint = "SendMessageTimeout", SetLastError = true)]
        public static extern uint SendMessageTimeout(IntPtr hWnd, uint Msg, int wParam, string lParam, SendMessageTimeoutFlags fuFlags, uint uTimeout, out int lpdwResult);
    }

    [Flags]
    public enum SendMessageTimeoutFlags : uint
    {
        SMTO_NORMAL = 0x0,
        SMTO_BLOCK = 0x1,
        SMTO_ABORTIFHUNG = 0x2,
        SMTO_NOTIMEOUTIFNOTHUNG = 0x8,
        SMTO_ERRORONEXIT = 0x20
    }

    public class Program
    {
        public static void Main(string[] args)
        {
            //int innerPinvokeResult;
            //uint pinvokeResult = User32.SendMessageTimeout(User32.HWND_BROADCAST, User32.WM_SETTINGCHANGE, 0, "Environment", SendMessageTimeoutFlags.SMTO_NORMAL, 1000, out innerPinvokeResult);
            Console.WriteLine("Over!!!!!!!!!!!!!!!!!!!!!!!!!");
        }
    }
}
"@

    Add-Type -TypeDefinition $sig
}


## [PInvoke.Program]::Main([IntPtr]::Zero);

$innerPinvokeResult=[int]0
[PInvoke.User32]::SendMessageTimeout([IntPtr]0xffff, [PInvoke.User32]::WM_SETTINGCHANGE, 0, "Environment", [PInvoke.SendMessageTimeoutFlags]::SMTO_NORMAL, 1000, [ref]$innerPinvokeResult);

Setx setx [/s [/u [] [/p []]]] [/m]

/m Specifies to set the variable in the system environment. The default setting is the local environment
 1
Author: samm, 2017-12-26 09:17:10

Vérifiez la fenêtre > Préférences > Java > JREs installé. Assurez-vous qu'il y a quelque chose là-bas; s'il n'y en a pas, ajoutez-en un.

Avez-vous récemment mis à jour votre JDK?

 0
Author: Drew Wills, 2010-01-08 20:21:07

Le JDK n'installe pas de JVM dans le chemin par défaut.

Sauf si vous avez besoin d'outils externes pour fonctionner comme ant, le non-JDK est suffisant pour qu'Eclipse s'exécute. La façon la plus simple d'installer une telle JVM est d'aller à http://java.com et laissez-le installer ce qu'il veut installer.

Puis double-cliquez à nouveau sur le binaire Eclipse.

 0
Author: Thorbjørn Ravn Andersen, 2010-01-08 21:06:28

Définissez la variable JAVA_HOME et ad JAVA_HOME/bin sur la variable de chemin evnrionment.

 0
Author: scienty, 2010-01-08 21:22:32

J'ai eu le même problème (Windows 7 x64, JDK 64 bits, Eclipse 32 bits), et j'ai trouvé 2 solutions:

  • Installez la version 64 bits d'Eclipse (trouvée en cliquant sur l'onglet "Développement construit" sur la page Téléchargements.)
  • Installez la version 32 bits du JDK.
 0
Author: Tim, 2011-01-31 17:21:17

J'ai eu le même problème. Le moyen le plus simple pour moi de le réparer était d'installer à la fois le JRE et l'eclipse en tant que x86 ou x64. Lorsque leur type de bit ne correspondait pas, eclipse ne pouvait pas le trouver. Donc, si ce n'est pas un gros problème pour vous de désinstaller et réinstaller afin de les faire correspondre, je le ferais.

J'ai fini par installer: Java Runtime Environment 1.7.0.3 (64 bits) et Eclipse Indigo (3.7) (64 bits)

Alors ça marche juste.

 0
Author: Loren C Fortner, 2012-02-29 16:09:45

Lorsque j'ai copié uniquement javaw, la deuxième erreur s'est produite, il n'y a pas de java.fichier dll, quand je l'ai copié aussi, eclipse n'a pas démarré, ce que j'ai fait, c'est que j'ai copié tout le dossier jdk dans le dossier eclipse et renommé id en jre. Le problème est résolu.

 0
Author: Matej Šípka, 2015-03-18 13:21:55