J'essaie de faire re-exécuter Eclipse v3.5 (Galileo) sur mon ordinateur. Je l'ai déjà exécuté sans aucun problème, mais maintenant le message d'erreur suivant s'affiche:
Un environnement JRE (Java Runtime Environment) ou un kit de développement Java (JDK) doit être disponible pour exécuter Eclipse. Aucune machine virtuelle Java n'a été trouvée après une recherche dans les emplacements suivants: C:\Eclipse\jre\javaw.exe javaw.exe dans votre PATH actuel
Je viens de faire une nouvelle installation du JDK et du SDK.
J'ai Windows 7 (x64).
Quoi de neuf avec ça? Comment je le répare?
Je ne parviens pas à exécuter ipconfig/tracert/ou ping.
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:
PATH
à mettre à jour.Juin 2012, jmbertucci commentaires:
J'utilise Windows 7 64 bits et le JRE 32 bits est installé . J'ai téléchargé Eclipse 64 bits qui recherche un JRE 64 bits . Parce que je n'avais pas le JRE 64 bits, l'erreur a été renvoyée, ce qui est logique.
Je suis allé à la page d'installation manuelle de Java (qui n'était pas aussi directement accessible que vous le souhaitez) et ai 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 :
Je devais éditer le fichier
Eclipse.ini
pour faire référence au chemin Java correct - Eclipse n'utilise pas l'environnementPATH
du tout lorsqu'il existe une valeur dansEclipse.ini
.
Il suffit de copier ce fichier:
c:/Program Files/Java/jre(5,6,7..any version)/bin/javaw.exe
dans le dossier Eclipse
* note testée uniquement pour Windows
Toutes les autres réponses concernant le réglage niquement le Java_HOME
ne sont pas entièrement correctes. Eclipse ne fait que pas consulter le Java_HOME
. Regardez de plus près le message d'erreur:
... dans votre PATH actuel
Il a littéralement dit PATH
, pas Java_HOME
.
Faites un clic droit Poste de travail et choisissez Propriétés (ou appuyez sur Winkey+Pause), allez à l'onglet Avancé, cliquez sur le bouton Variables d'environnement, dans la liste Variables système, sélectionnez Path
(no, pas Classpath
), cliquez sur Éditer et ajoutez ;c:\path\to\jdk\bin
à la fin de la valeur.
Sinon, vous pouvez également ajouter la variable d'environnement Java_HOME
et l'utiliser dans la variable PATH
. Dans le même dialogue, cliquez sur New et ajoutez Java_HOME
avec la valeur c:\path\to\jdk
. Ensuite, vous pouvez ajouter ;%Java_HOME%\bin
à la fin de la valeur du paramètre Path
.
Ouvrez les Propriétés système de Windows à partir du panneau de configuration et recherchez la section des variables d'environnement:
La plupart des outils Java pourront désormais trouver votre installation Java à l'aide de la variable d'environnement Java_HOME ou en recherchant Java.exe/javaw.exe dans la variable d'environnement Path.
Si vous téléchargez la version 64 bits d’Eclipse; il cherchera la version 64 bits de JRE . Si vous téléchargez la version 32 bits d’Eclipse; il cherchera la version 32 bits de JRE
Ce que j'ai fait est d'installer les versions 32 et 64 bits de JRE. Vous pouvez l'obtenir 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.
Il s’est avéré que tout ce que je devais faire était de changer le 'chemin' en:
"C:\Windows\system32; C:\Windows; C:\Windows\System32\Wbem; C:\Fichiers programme (x86)\Java; C:\Fichiers programme (X86)\Java\jdk1.6.0_14\bin "
ça l'a fait :)
J'ai Windows 7 64 bits, et j'ai eu le même problème avec Eclipse. Pour que cela fonctionne, je devais utiliser Internet Explorer (version 64 bits) pour télécharger Java. C'était le seul moyen d'obtenir que Java installe une version 64 bits. Lorsque j'ai utilisé Firefox pour installer Java, il a automatiquement installé une version 32 bits (tellement idiot!) Et la version 64 bits d'Eclipse ne détecterait pas la version Java 32 bits.
Ne vous fiez pas à la variable de chemin Windows 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 du système par une JVM 32 bits. Notez également que cette entrée doit être la dernière du fichier Eclipse.ini, sinon elle 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 votre chemin sont configurés comme valides, ils peuvent avoir ce problème, donc le moyen le plus simple de le faire est d'ouvrir votre fichier Eclipse.ini dans votre dossier d'installation Eclipse
-vm
C:\Program Files\Java\jdk1.7.0_71\bin\javaw.exe
remplacez C:\Program Files\Java\jdk1.7.0_71\bin\javaw.exe par votre chemin jdk ou jre
La solution en quelques mots:
Cliquez avec le bouton droit de la souris sur Poste de travail, cliquez sur Propriétés, puis sur Paramètres système avancés. Une fenêtre Propriétés système apparaît. Sous l'onglet Options avancées, choisissez les variables d'environnement. La fenêtre Variables d'environnement s'affiche. Sous la section Variables système, recherchez l'option PATH
. , et éditez la valeur en la changeant (la version; jre6, jre7, etc.) en jre que vous utilisez, par exemple pour le mien: C:\Program Files\Java\jre7\bin
Ne vous inquiétez pas, j'ai également été gâché par cette erreur fatale et quand je l'ai eu, j'étais tellement frustré que je laissais même de quitter une programmation Android, mais je l'ai eu, il suffit tout d'abord de copier ce code et de le coller dans la variable système Sous chemin ...
C:\Fichiers de programme; C:\Winnt; C:\Winnt\System32; C:\Programme Fichiers\Java\jre6\bin\javaw.exe
Maintenant, copiez le "jre" dossier de votre chemin comme si j'avais "jre" sous ce chemin
C:\Program Files\Java
et le coller dans votre dossier Eclipse signifie où votre fichier Eclipse.exe est placé. comme j'ai mon Eclipse mis en place à cet endroit
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 lancez 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
-vmF:\Logiciels\LANGUES SOFTEARE\Configuration Android\Eclipse Indigo version 32 bits\jre\bin/javaw.exe
Maintenant, cette fois-ci, lorsque vous lancerez Eclipse, il recherchera javaw.exe. Par conséquent, il recherchera le chemin dans Eclipse.ini, car il se trouve maintenant dans le même dossier. Il démarrera alors javaw.exe et commencera à fonctionner. .
Si vous avez encore une question, vous pouvez la redemander, allez simplement sur mon profil et découvrez mon identifiant email. parce que j'aime le forum de débordement de pile, et cela m'a fait un programmeur. *
Edité mon fichier Eclipse.ini pour mettre à jour le JDK récemment mis à jour. Auparavant j'avais jdk1.7.0_09 et mis à jour maintenant pour 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) doit être disponible pour exécuter Eclipse. Non Une machine virtuelle Java a été trouvée après une recherche dans le .__ suivant. emplacements: C:/Programmes/Java/jdk1.7.0_09/bin/javaw
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.
Dans votre fichier Eclipse.ini
, vous devez mettre à jour le chemin d'accès à la VM pour qu'il pointe vers le même emplacement où javaw.exe
est installé sur votre ordinateur.
si après l'ajout de la variable C:\Program Files\Java\jdk1.8.0_92\bin dans PATH dans les variables d'environnement, Eclipse a généré la même erreur
vérifiez le fichier de paramètres de configuration Eclipse trouvé dans le dossier Eclipse, vous devez voir le même chemin jdk que vous avez dans C:\program Files
J'espère que ça aide.
créez un fichier batch dans le dossier Eclipse et écrivez-le:
Eclipse -vm C:\Sun\SDK\jdk\jre\bin\javaw.exe
si vous mettez à jour votre version de Java avec la mise à jour par défaut sur 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.
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 aussi créé le dossier jre
dans le dossier Eclipse et copié le dossier bin
à partir de mon chemin d'accès local C:\Program Files (x86)\Java\jre7
vers ..\Eclipse\jre\
.
J'ai eu un collègue avec ce problème précis 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, ce qui ne devrait donc pas poser de problème
Il y a un moyen plus facile de le faire. Il suffit de lancer cmd x64. Tapez cmd x64 dans la barre de recherche dans le menu de démarrage et vous le trouverez :) Vous pouvez également définir le chemin d'accès aux fichiers de programme (x86) ... Par exemple, C:\Program Files (x86)\Java\jre6
Ajoutez simplement le chemin JRE pour Ex: C:\Program Files\Java\jre5\bin dans la variable d'environnement. entre chaque chemin. Puis cliquez sur le fichier Eclipse.exe Cela fonctionnera .....
Essayez de définir votre Java_HOME dans le bon dossier. Google pour la configuration des variables d'environnement dans Windows.
J'ai rencontré ce problème aussi. Mon cas est le suivant:
En 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 les types de la valeur de registre Path
sont différents, j'ai donc vérifié si le chemin est valide ou non à l'aide de 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) à l'aide des 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 modifications vers 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 aux variables d'environnement le font pas entraîner de changement immédiat. Par exemple, si vous démarrez un autre Invite de commande après avoir apporté les modifications, les variables d'environnement reflétera les valeurs précédentes (pas les valeurs actuelles). Les changements ne le font pas prend effet jusqu’à ce que vous vous déconnectiez puis vous reconnectiez.
Pour effectuer ces modifications sans avoir à vous déconnecter, diffusez un WM_SETTINGCHCHANGE message à toutes les fenêtres du système, de sorte que tout Les applications intéressées (telles que l'Explorateur Windows, le Gestionnaire de programmes, le Gestionnaire de tâches , le Panneau de configuration, etc.) peuvent effectuer une mise à jour.
Voir les détails sur 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
Eh bien, cette réponse s'adresse à ceux qui ont essayé tous les autres, mais toujours pas de chance, que ce soit Studio Android ouEclipse
Je le fais habituellement lorsque tout le reste échoue.
set Java_exe=
call lib\find_Java.bat
if not defined Java_exe goto :EOF
Changez les en
set Java_exe=
< le chemin d'accès à votre fichier Java.exe (qui se trouve dans le répertoire dossier/bin de jdk) >
trouver 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
swt_path=
< le chemin d'accès à votre fichier swt.jar respectif. Pour x86, il se trouve dans sdk\tools\lib\x86 et pour x64 dans sdk\tools\lib\x86_64 >Cette erreur s’explique par le fait qu’Eclipse a besoin d’un JRE pour se lancer, qu’il ne trouve pas. Le premier endroit recherché est le répertoire en cours, puis le fichier Eclipse.ini et enfin le chemin du système. Donc, si le jvm ne peut pas être trouvé correctement (les versions des bits sont différentes) via l’un de ces trois emplacements, il
La méthode recommandée consiste à modifier le fichier Eclipse.ini et à indiquer à Eclipse où rechercher exactement vm/jre, en incluant cette ligne dans le fichier:
-vm
[chemin d'accès à votre Java.exe] (généralement situé sous "C:\Program Files\Java\jre7\bin")
P.S. Pour éditer le fichier Eclipse.ini, vous devrez peut-être le déplacer, le modifier puis le coller à nouveau.
Source: - wiki
Tout d'abord merci à YouYou pour sa solution! J'ai essayé de répondre par YouYou ( https://stackoverflow.com/a/14464653/801919 ). Au début, cela n'a pas fonctionné pour moi. Voici les étapes à suivre pour que cela fonctionne:
Choose the 32-bit download to use with a 32-bit browser.
J'ai donc téléchargé la version 32 bits.Java was started but returned exit code=13
javaw.exe
copié à partir de cette version.... Et Eclipse a commencé à fonctionner !!! Yaay!
J'ai eu le même problème (Windows 7 x64, JDK 64 bits, Eclipse 32 bits) et j'ai trouvé 2 solutions:
Un problème est le conflit entre la version Eclipse-64bit et notre installation Java étant la version 32 bits. Cela ne se résout pas facilement, car la page d'installation de Java n'offre pas l'option 64 bits. Elle suppose le mode 32 bits et télécharge et installe la version 32 bits. Pour résoudre ce problème, procédez comme suit:
jre7
à partir de C:/program files/Java/
et le copions dans notre dossier d'installation Eclipse.jre
.Installez Eclipse.
--launcher.appendVmargs - vm C:\Program Files\Java\jdk1.7.0_79\jre\bin\javaw.exe - vmargs
J'ai eu le même problème. Pour y remédier, le moyen le plus simple était d'installer à la fois JRE et Eclipse en tant que x86 ou x64. Lorsque leur type de bit ne correspond pas, Eclipse n'a pas pu le trouver. Donc, si ce n'est pas un gros problème pour vous de désinstaller et de 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.
D'abord aller à l'ordinateur puis propriétés puis paramètres avancés du système puis avancé
(3ème menu)
puis cliquez sur le bouton variables d'environnement en bas.
Pour accéder aux variables d’environnement, ajoutez:
C:\Program Files\Java\jdk1.8.0_102\bin\;C:\Program Files\Java\jdk1.8.0_102\lib\;
et l'erreur disparaîtra. C'est le meilleur.
L’autre méthode consiste à copier le dossier jre (C:\Program Files\Java\jre1.8.0_102
) dans
E:\Eclipse-jee-Indigo-SR2-win32\Eclipse
dossier. Alors l'erreur disparaîtra.
Vérifiez la fenêtre> Préférences> Java> JRE installés. 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?
Le JDK n'installe pas de machine virtuelle dans le chemin par défaut.
À moins que des outils externes ne fonctionnent comme ant, le logiciel non-JDK suffit à Eclipse pour fonctionner. Le moyen le plus simple d'installer une telle machine virtuelle consiste à accéder à http://Java.com et à le laisser installer ce qu'il veut installer.
Double-cliquez ensuite à nouveau sur le binaire Eclipse.
Lorsque j'ai copié uniquement javaw, la deuxième erreur s'est produite: il n'y a pas de fichier Java.dll. Eclipse n'a pas démarré. J'ai copié le dossier entier jdk dans le dossier Eclipse et renommé id en jre. Problème résolu.
définissez la variable Java_HOME et ad Java_HOME/bin sur la variable de chemin d’evnrionment.