O que é java virtual machine e o que isso tem a ver com o Java?

1

Eu estava tentando instalar o eclipse no meu Macbook Air. Quando executo o instalador, recebo esta mensagem

ParecenãohaverumapáginaoficialdedicadaàJVMcomoosoutrosaplicativos.Quandoeuprocuro"install jvm" eu fui levado a uma página " download java ".

Eu instalei o java mais recente desta página, mas a mensagem ainda está lá, o que me deixa mais confuso.

As perguntas são:

  1. Se a JVM tiver como objetivo habilitar o Java "em qualquer lugar", ela já não deveria estar instalada depois de instalar o Java mais recente?

  2. Quando eu pesquiso pelo Google, ele apresenta muitas páginas, nenhuma delas parece uma página genuína, eu até mesmo pesquiso jvm em java.com, mas nada de útil aparece.

    Por que é tão difícil encontrar uma ferramenta tão popular e onde exatamente devo fazer o download da JVM?

por shenkwen 03.03.2016 / 23:51

2 respostas

5

O que é a JVM?

A Java Virtual Machine (JVM) é um interpretador que executa o bytecode de Java.

Quando você compila um programa Java, a saída é o bytecode Java, que pode ser executado por qualquer computador que tenha uma JVM nativa.

In the Java programming language, all source code is first written in plain text files ending with the .java extension.

Those source files are then compiled into .class files by the javac compiler.

A .class file does not contain code that is native to your processor; it instead contains bytecodes — the machine language of the Java Virtual Machine (JVM).

The java launcher tool then runs your application with an instance of the Java Virtual Machine.

enter image description here

Because the Java VM is available on many different operating systems, the same .class files are capable of running on Microsoft Windows, the Solaris™ Operating System (Solaris OS), Linux, or Mac OS.

Some virtual machines, such as the Java SE HotSpot at a Glance, perform additional steps at runtime to give your application a performance boost. This includes various tasks such as finding performance bottlenecks and recompiling (to native code) frequently used sections of code.

enter image description here

Fonte Sobre a tecnologia Java

Então, como faço o download de uma JVM?

O Java Runtime Environment (JRE) inclui uma JVM.

  • Se você está apenas executando programas Java, o JRE é suficiente.

O Java Development Kit é um superconjunto do JRE (por isso também inclui uma JVM). Ele também contém outras ferramentas necessárias para desenvolver programas Java, por exemplo, um compilador.

  • Se você estiver desenvolvendo programas Java, faça o download do JDK.

Você pode fazer o download do JRE e do JDK no link

Então, por que recebo uma mensagem de erro?

A versão da JVM que você já instalou é muito antiga para a versão do Eclipse que você está tentando instalar.

Para obter uma versão mais recente, você precisa instalar um JRE mais novo ou um JDK mais recente, ambos incluindo uma JVM.

Eu mesmo instalei o java mais recente desta página, mas a mensagem ainda está lá

A potential solution to your problem might be to uninstall Java6 (provided by Apple itself) and only have Java7 installed in your system. This only applies in case you have no applications that desperately need the old Java6 version to be installed.

To remove the Apple-like Java6 installation open a Terminal and:

sudo rm -rf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk

After this step you should only have Java7 by Oracle installed in your system. To verify, open another terminal and do a:

java -version 

It should display something like "java version "1.7.0_XX" where XX is the current update version of the Java7 installation. If not: proceed with the next step.

Redefine the JAVA_HOME variable (to support IDEs like Eclipse and other developer tools...), which helps detecting where the "active" Java installation is situated in your system. Open a terminal and (Note: replace XX first!):

sudo rm /Library/Java/Home

sudo ln -s /Library/Java/JavaVirtualMachines/jdk1.7.0_XX.jdk/Contents/Home /Library/Java/Home

Afterwards, a fresh installation of Eclipse should detect Java7 in your system and should work with this version out of the box. You can modify an installed Eclipse to use this installation by navigating in Eclipse to:

Preferences -> Java -> Installed JREs.

Then remove the old Java6 system entry AND add new path (see above) with the name Java7.

Resposta de origem a Instalei o Java 7, mas o Eclipse continua dizendo que o 1.6 não é adequado para este produto MWiesner

    
por 04.03.2016 / 00:20
1

existe esse JDK, que é JVM, além de outras coisas para o link de desenvolvimento em Java Essa mensagem que você tem uma captura de tela sugere que você já tem a JVM 1.6, mas precisa de 1.7 ou superior. Mas você não precisa do JDK, é bem grande.

Esse link que diz download gratuito do java, incluiria o link da JVM. Um google diz que o JRE inclui a JVM mais alguns classes. A outra opção é o JDK, que inclui JVM e algumas ferramentas para desenvolvedores. Você só precisa do JRE, a menos que seja um desenvolvedor, do que apenas obter o JDK. De qualquer maneira, você obterá a JVM.

Tente ir para qualquer parte do mac que envolva listar programas, e veja se você pode remover a versão 1.6. Parece que o programa que dá essa mensagem está vendo somente o java 1.6 e não a última versão. Você pode verificar seu caminho echo $PATH e tentar descobrir qual versão do Java está em seu caminho.

este comando funciona no windows com o gnuwin32

C:\Users\harvey>java -showversion 2>&1 | head -n 1
java version "1.8.0_11"

Eu acho que funciona em um linux ou mac também

$ java -showversion 2>&1 | head -n 1
java version "1.8.0_11"

ou apenas java -showversion e veja a primeira linha de saída e você verá a versão.

    
por 04.03.2016 / 00:04

Tags