Eclipse – sem Java (JRE) / (JDK)… sem máquina virtual

Eu estou tentando obter o Eclipse v3.5 (Galileo) para re-executar no meu computador – eu tenho executado antes sem problemas, mas agora eu continuo recebendo este erro:

Um Java Runtime Environment (JRE) ou um Java Development Kit (JDK) deve estar disponível para executar o Eclipse. Nenhuma máquina virtual Java foi encontrada após a pesquisa nos seguintes locais: javaw.exe C: \ eclipse \ jre \ javaw.exe em seu PATH atual

Acabei de fazer uma nova instalação do JDK e do SDK.

Eu tenho o Windows 7 (x64).

O que há com isso? Como faço para corrigir isso?

Eu não posso executar qualquer um dos ipconfig / tracert / ou ping.

O Eclipse tentará, por padrão, iniciar com o padrão ” java.exe ” (o primeiro referenciado pelo seu PATH )

Três coisas para lembrar:

  • “Instalar” um JRE ou um JDK pode ser tão simples quanto descompactá-lo ou copiá-lo de outro computador: não há etapas especiais de instalação e você pode ter quantas versões de JVM diferentes (1.4, 5.0, 6.0 …) desejar , “instalado” (copiado) quase em qualquer lugar no seu disco.
  • Eu recomendaria sempre executar o Eclipse com o último JRE possível (para se beneficiar das últimas evoluções do hotspot ). Você pode:
    • Referencie esse caminho exato do JRE no seu eclipse.ini .
    • Copie qualquer JRE do seu no diretório / jre . Em ambos os casos, nenhum PATH para atualizar.
  • A JVM na qual você fará referência em sua session do Eclipse nem sempre é aquela usada para ativar o Eclipse porque:
    • Você só precisa de um JRE para ativar o Eclipse, mas assim que o Eclipse for lançado, deverá registrar um JDK para seus projetos (especialmente para origens Java e propósitos de debugging, também em teoria para compilation, mas o Eclipse possui seu próprio compilador Java) Nota: Você pode registrar apenas um JRE dentro do Eclipse porque é suficiente para executar seu programa, mas novamente um JDK permitirá mais operações.
    • Embora o Java registrado no Eclipse padrão seja aquele usado para iniciar a session, é possível registrar um SDK mais antigo (incluindo um não-Sun) para executar / depurar seus programas com um JRE semelhante ao que será realmente ser usado na produção.

JREs instalados


Junho de 2012, comentários jmbertucci :

Estou executando o Windows 7 de 64 bits e tive o JRE de 32 bits instalado. Eu fiz o download do Eclipse de 64 bits que procura um JRE de 64 bits. Porque eu não tenho o JRE de 64 bits, ele jogou o erro, o que faz sentido.

Fui à página de instalação manual do Java (que não estava tão diretamente acessível quanto você gostaria) e instalei a versão de 64 bits. Consulte ” Downloads Java para todos os sistemas operacionais “. Isso era tudo que eu precisava.


Abril de 2016: Steve Mayne acrescenta nos comentários :

Eu tive que editar o arquivo eclipse.ini para fazer referência ao caminho Java correto – o Eclipse não usa o ambiente PATH quando existe um valor no eclipse.ini .

Apenas copie este arquivo:

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

para a pasta Eclipse

* note apenas testado para Windows

Substituindo javaw.exe na pasta Eclipse

Todas as outras respostas sobre a configuração apenas do JAVA_HOME não estão totalmente certas. O Eclipse não consulta o JAVA_HOME . Olhe mais de perto a mensagem de erro:

… no seu PATH atual

Literalmente dizia PATH , não JAVA_HOME .

Clique com o botão direito em My Computer e selecione Properties (ou pressione Winkey + Pause ), vá até a aba Advanced , clique no botão Environment Variables , na lista System Variables na parte inferior selecione Path (não, não Classpath ), clique em Edit e adicione ;c:\path\to\jdk\bin até o final do valor.

Como alternativa, e se não estiver presente, você também poderá adicionar a variável de ambiente JAVA_HOME e utilizá-la no PATH . No mesmo diálogo, clique em Novo e adicione JAVA_HOME com o valor de c:\path\to\jdk . Então você pode adicionar ;%JAVA_HOME%\bin ao final do valor da configuração Path .

Abra as Propriedades do Sistema do Windows no painel de controle e procure a seção de variables ​​de ambiente:

  • Adicione uma input JAVA_HOME apontando para o diretório onde o JDK está instalado (por exemplo, C: \ Arquivos de Programas \ Java \ jre6)
  • Encontre a input Caminho e adicione o seguinte no final:% JAVA_HOME% \ bin
  • OK as mudanças
  • Reinicie o eclipse para que esteja ciente do novo ambiente

A maioria das ferramentas Java agora poderá encontrar sua instalação Java usando a variável de ambiente JAVA_HOME ou procurando java.exe / javaw.exe na variável de ambiente Path.

Se você baixar a versão de 64 bits do Eclipse; ele irá procurar pela versão de 64 bits do JRE. Se você baixar a versão de 32 bits do Eclipse; ele vai procurar pela versão de 32 bits do JRE

O que fiz foi instalar a versão 32 e 64 bits do JRE. Você pode obter isso do site SUN Oracle. O site JAVA parece instalar automaticamente a versão de 32 bits do Java. Eu acho que é por causa do navegador da web.

Acontece que tudo que eu precisava fazer era mudar o ‘caminho’ para:

“C: \ Windows \ system32; C: \ Windows; C: \ Windows \ System32 \ Wbem; C: \ Arquivos de Programas (x86) \ Java; C: \ Arquivos de Programas (x86) \ Java \ jdk1.6.0_14 \ bin ”

que fez isso 🙂

Eu tenho o windows 7 de 64 bits, e eu tive esse mesmo problema com o eclipse. Para fazê-lo funcionar, eu tive que usar o Internet Explorer (versão de 64 bits) para baixar o java. Esta foi a única maneira de obter o java para instalar uma versão de 64 bits. Quando usei o firefox para instalar o java, ele instalou automaticamente uma versão de 32 bits (tão idiota!). E a versão de 64 bits do Eclipse não detectaria a versão de 32 bits do java.

Solução em poucas palavras:

Clique com o botão direito do mouse em Meu computador, clique em propriedades, configurações avançadas do sistema, uma janela Propriedades do sistema será exibida, na guia avançada, escolha variables ​​de ambiente, janela Variáveis ​​de ambiente, na seção Variáveis ​​do sistema, procure pela variável PATH e edite a variável. valor, alterando-o (a versão; jre6, jre7, etc) para qualquer jre que você estiver usando, por exemplo, para o meu: C:\Program Files\Java\jre7\bin

Não se preocupe, eu também fui arruinado por este erro e fatal e quando eu consegui isso eu estava tão frustrado mesmo eu estava dando para deixar uma programação android, mas eu consegui, Simplesmente antes de tudo copiar esse código e colar na sua variável de sistema Sob o caminho …

C: \ Arquivos de programas; C: \ Winnt; C: \ Winnt \ System32; C: \ Arquivos de programas \ Java \ jre6 \ bin \ javaw.exe

Agora copie a pasta “jre” do seu caminho como se eu tivesse “jre” nesse caminho

  C:\Program Files\Java 

e cole na sua pasta eclipse, onde o seu arquivo eclipse.exe é colocado. como eu tenho meu eclipse criado neste local

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

Então, dentro da pasta eclipse, cole o FOLDER “jre”. Se você tem “jre6” então renomeie como “jre” …. e rode seu eclipse você terá a solução …

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

OUTRA SOLUÇÃO: 2

Se o problema não puder ser resolvido com as etapas acima, siga estas etapas

  1. Copie a pasta “jre” do seu caminho Java como C: \ Arquivos de Programas \ Java \ jre6 * etc e cole-a no diretório eclipse (onde seu eclipse está disponível)
  2. Vá para o arquivo eclipse.ini, abra-o.
  3. Altere o diretório do seu arquivo javaw.exe como

-vmF: \ Softwares \ LANGUAGES SOFTEARE \ Configuração do Android \ Eclipse Indigo versão 32 Bit \ jre \ bin / javaw.exe

Agora, desta vez, quando você iniciar o eclipse, ele procurará o javaw.exe, portanto, ele pesquisará o caminho no eclipse.ini, pois agora ele está na mesma pasta, ele iniciará o javaw.exe e começará a funcionar .

Se você ainda tiver alguma dúvida, você pode perguntar novamente, basta ir no meu perfil e descobrir o meu ID de e-mail. porque eu amo o fórum de estouro de pilha, e isso me fez um programador. *

Não confie na variável de caminho do windows porque ela é alterada em quase todas as atualizações. Por exemplo, uma atualização java chrome (32bit em uma máquina de 64 bits) substitui a JVM de 64 bits em todo o sistema por uma JVM de 32 bits. Note também que esta input deve ser a última do eclipse.ini, caso contrário, não funciona, E – conforme indicado o contrário – a variável JAVA_HOME NÃO é avaliada pelo eclipse.exe.

mesmo que você tenha JAVA_HOME e Path configurados como válidos, o may pode ter esse problema, então a maneira mais simples de fazer é abrir o eclipse.ini na sua pasta de instalação do eclipse

-vm

C: \ Arquivos de programas \ Java \ jdk1.7.0_71 \ bin \ javaw.exe

substitua C: \ Arquivos de Programas \ Java \ jdk1.7.0_71 \ bin \ javaw.exe pelo caminho do seu jdk ou jre

Em seu arquivo eclipse.ini , você precisa atualizar o caminho para a VM para apontar para o mesmo local em que javaw.exe está instalado em sua máquina.

Editei meu arquivo eclipse.ini para atualizar o JDK recém-atualizado. Anteriormente eu tinha jdk1.7.0_09 e atualizei agora para jdk1.7.0_80 e eclipse jogou este erro.

Um Java Runtime Environment (JRE) ou Java Development Kit (JDK) deve estar disponível para executar o Eclipse. Nenhuma máquina virtual Java foi localizada após a pesquisa nos seguintes locais: C: / Arquivos de Programas / Java / jdk1.7.0_09 / bin / javaw

Depois de atualizar o eclipse.ini de

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

para

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

O Eclipse funciona bem.

faça um arquivo em lote na pasta eclipse e escreva nele:

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

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

se após adicionar o C: \ Arquivos de Programas \ Java \ jdk1.8.0_92 \ bin na variável PATH nas variables ​​de ambiente, o eclipse deu o mesmo erro

verifique o arquivo de configurações de configuração do eclipse que se encontra na pasta eclipse, você deve ver o mesmo caminho jdk que você tem em C: \ Arquivos de Programas

insira a descrição da imagem aqui

Espero que ajude.

Quando eu tive esse problema, no meu caso eu tinha x64 JDK + JRE instalado com x86 Eclipse. Então, instalar o x86 JDK + JRE resolveu meu problema 🙂 Também criei a pasta jre na pasta eclipse e copiei a pasta bin do caminho local C:\Program Files (x86)\Java\jre7 para ..\eclipse\jre\ .

  • SO de 64 bits -> Você precisa de: Java de 64 bits e Eclipse de 64 bits
  • SO de 32 bits -> Você precisa de: Java de 32 bits e Eclipse de 32 bits

se você atualizar sua versão do java com a atualização padrão no seu computador de 64 bits (e você tiver um navegador de 32 bits ), o java instalará a versão de 32 bits. Você deve encontrar a versão do java de 64 bits e instalá-lo.

Eu tive um colega de trabalho com este problema exato na semana passada. Ele consertou isso instalando a versão x64 do Eclipse e o x64 JDK.

Edit: ele reutilizou seu antigo espaço de trabalho depois de instalar os plugins necessários, de modo que não deve ser um grande problema

Existe uma maneira mais fácil de fazer isso. Basta executar o cmd x64. Digite cmd x64 para pesquisar a barra no menu iniciar e você vai encontrá-lo 🙂 Ou, como alternativa, você deve definir o caminho para os arquivos de programa (x86) … Por exemplo, C: \ Arquivos de Programas (x86) \ Java \ jre6

Apenas adicione o caminho do JRE para Ex: C: \ Arquivos de programas \ Java \ jre5 \ bin na variável de ambiente Coloque “;” entre todos os caminhos. Em seguida, clique no eclipse.exe Ele vai funcionar …..

O motivo pelo qual você recebe este erro é porque o eclipse precisa de um JRE para ser iniciado, o que não pode ser encontrado. O primeiro local que procura é o diretório atual, depois o arquivo eclipse.ini e, finalmente, o caminho do sistema. Então, se ele não consegue encontrar o jvm correto (as versões de bits são diferentes) através de qualquer um desses três locais, os berços

A maneira recomendada é editar o arquivo eclipse.ini e informar ao eclipse exatamente onde procurar o vm / jre, incluindo essa linha no arquivo:

-vm
[caminho para o seu java.exe] (que geralmente está em “C: \ Arquivos de Programas \ Java \ jre7 \ bin”)

PS Para editar o eclipse.ini, você pode precisar movê-lo, editá-lo e depois colá-lo de volta

Fonte: – wiki

Em primeiro lugar obrigado a YouYou pela sua solução! Eu tentei responder por YouYou ( https://stackoverflow.com/a/14464653/801919 ). Inicialmente, não funcionou para mim. A seguir, estão as etapas necessárias para que funcione:

  1. Inicialmente, eu não tinha o Java instalado na minha nova máquina. Então, eu tive que instalar isso (baixado de: http://java.com/en/download/manual.jsp ).
  2. Estou executando o sistema operacional de 64 bits. Mas, durante o download, recebi a mensagem que poderia me ajudar a escolher qual versão do Java baixar: Choose the 32-bit download to use with a 32-bit browser. Por isso, baixei a versão de 32 bits.
  3. Em seguida, segui o procedimento mencionado em https://stackoverflow.com/a/14464653/801919 , esperando obter a solução.
  4. Eu tenho outro erro: o Java was started but returned exit code=13
  5. Então, eu instalei a versão de 64 bits do Java.
  6. Copiado javaw.exe dessa versão.

… E o Eclipse começou a funcionar !!! Yaay!

Bem, esta resposta é para aqueles que tentaram todos eles outros ainda não há sorte, pode ser este estúdio Android ou Eclipse eu costumo fazer isso quando tudo o resto falhar.

  1. Encontre a pasta sdk do Android e abra o arquivo android.bat com um editor de texto
  2. você encontrará alguns comandos como estes no início do arquivo,

set java_exe=

call lib\find_java.bat

if not defined java_exe goto :EOF

  1. Mude-os para

    set java_exe= < o caminho para o seu arquivo java.exe (pode ser encontrado dentro do diretório jdk folder / bin) >

  2. encontre as linhas

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. Substitua-o por set swt_path= < o caminho para o respectivo arquivo swt.jar, para x86 está em sdk \ tools \ lib \ x86 e para x64 em sdk \ tools \ lib \ x86_64 >
  2. Salve e feche o arquivo e agora você está pronto para ir

Tente definir seu JAVA_HOME para a pasta correta. Google para definir variables ​​de ambiente no Windows.

Eu me deparei com esse problema também. Meu caso é o seguinte:

insira a descrição da imagem aqui insira a descrição da imagem aqui

Em texto:

 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 

Eu encontrei seus tipos de valor do registro Path são diferentes, então eu verifiquei se o caminho é válido ou não pelo seguinte comando:

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

Como resultado, redefino o ambiente local (usuário atual) pelos seguintes comandos ( 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 

Mas, no processo atual, ele não pode propagar essas alterações para outros processos em execução.

No entanto, se você modificar diretamente as variables ​​de ambiente do usuário no Editor do Registro,

essas modificações nas variables ​​de ambiente não resultam em alterações imediatas. Por exemplo, se você iniciar outro Prompt de Comando depois de fazer as alterações, as variables ​​de ambiente refletirão os valores anteriores (não os atuais). As alterações não entram em vigor até você fazer logoff e, em seguida, fazer logon novamente.

Para efetuar essas alterações sem precisar fazer logoff, transmita uma mensagem WM_SETTINGCHANGE para todas as janelas no sistema, para que os aplicativos interessados ​​(como o Windows Explorer, Gerenciador de programas, Gerenciador de tarefas, painel de controle e assim por diante) podem executar uma atualização.

Veja detalhes em Como propagar variables ​​de ambiente para o sistema

Aqui, eu dou um script powershell para fazer isso:

 # powershell -ExecutionPolicy ByPass -File # Standard, inline approach: (ie 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 { } "@ } ps 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 

Verifique a janela> Preferências> Java> JREs instalados. Certifique-se de que há algo lá; se não houver, adicione um.

Você atualizou recentemente seu JDK?

O JDK não instala uma JVM no caminho padrão.

A menos que você precise de ferramentas externas para executar como ant, o não-JDK é suficiente para o Eclipse ser executado. A maneira mais fácil de instalar uma JVM como essa é ir para http://java.com e permitir que ela instale o que quiser instalar.

Em seguida, clique duas vezes no binário do Eclipse novamente.

defina a variável JAVA_HOME e ad JAVA_HOME / bin para a variável do caminho de evnrionment.

Eu tive o mesmo problema (Windows 7 x64, 64 bits JDK, 32bit Eclipse), e encontrei 2 soluções:

  • Instale a versão de 64 bits do Eclipse (encontrada clicando na guia “Development Builds” na página de downloads.)
  • Instale a versão de 32 bits do JDK.

Eu tive o mesmo problema. A maneira mais fácil, para mim, de consertar isso era instalar o JRE e o eclipse como x86 ou x64. Quando o tipo de bit não combinava, o eclipse não conseguiu encontrá-lo. Então, se não é um grande problema para você desinstalar e reinstalar, a fim de fazê-los corresponder, eu faria isso.

Acabei instalando: Java Runtime Environment 1.7.0.3 (64 bits) e Eclipse Indigo (3.7) (64 bits)

Então isso simplesmente funciona.

Quando eu copiei apenas javaw, o segundo erro ocorreu, não há um arquivo java.dll, quando eu copiei também, eclipse não foi iniciado, o que eu fiz foi que eu copiei toda a pasta jdk para a pasta eclipse e renomeie id para jre. Problema resolvido.