GARANTIR DESCONTO

Fórum Eclipse - JDK - JRE #401315

19/05/2011

0

Nobres companheiros,
Tenho algumas dúvidas, me desculpa pela ignorância mas faz tempo que não trabalha com o eclipse.

Instalei o eclipse e depois add um servidor tomcat configurei tudo e rodou meu projeto blz.

Mas tenho uma dúvida, qual a diferença de JRE para JDK ? pq instalei meu eclipse no ubuntu e ele rodou meu projeto sem nenhum problema, só que eu não instalei o kit de desenvolvimento JDK, olhando meu eclipse observei que ele só tem uma referencia para esse JRE !! o JRE já vem com o compilador ? ou o eclipse já vem o compilador Java ? pq ele rodou meu projeto sem eu ter instalado o JDK ?

Se eu não tenho o JDK instalado, isso pode causar algum problema para mim a nível de desenvolvimento no futuro.
Agradeço.
Ricardo Santos

Ricardo Santos

Responder

Posts

19/05/2011

Anthony Accioly

Olá Ricardo, 
Você tem razão. O JDK é o Development Kit, o JRE é o Runtime (não vem com o javac que é o compilador Java, porém vem com a ferramenta java para interpretar bytecode). Ou seja, você precisa somente do runtime para rodar aplicações java, mas precisa do JDK para desenvolver).
Apesar do JDT ter um compilador incremental http://www.eclipse.org/jdt/core/ para uso interno, eu recomendo fortemente que você faça a instalação do JDK da Oracle, ou do Open JDK.

Responder

Gostei + 0

20/05/2011

Ricardo Santos

Olá Ricardo, 
Você tem razão. O JDK é o Development Kit, o JRE é o Runtime (não vem com o javac que é o compilador Java, porém vem com a ferramenta java para interpretar bytecode). Ou seja, você precisa somente do runtime para rodar aplicações java, mas precisa do JDK para desenvolver).
Apesar do JDT ter um compilador incremental http://www.eclipse.org/jdt/core/ para uso interno, eu recomendo fortemente que você faça a instalação do JDK da Oracle, ou do Open JDK.




 Então resumindo, vc tá me dizendo que o JRE é para executar os arquivos, e o eclipse tem seu próprio compilador ?
 
 ai pergunto, seu eu baixar e instalar o JDK, terei que "falar " para meu eclipse para ele não utilizar o seu próprio compildor mas utilizar o compilador JDK que eu baixei ? se for isso realmente onde eu configuro no eclipse para
ele utiizar o compilador do JDK que eu baixei e não o seu próprio ?

outra pergunta, qual a diferença de Open JDK e JDK , um é livro e outro não ? a oracle já tá comprado pelo JDK  ?

OBRIGADO
Responder

Gostei + 0

21/05/2011

Anthony Accioly

Então resumindo, vc tá me dizendo que o JRE é para executar os arquivos, e o eclipse tem seu próprio compilador ?


Exatamente.

se for isso realmente onde eu configuro no eclipse para
ele utiizar o compilador do JDK que eu baixei e não o seu próprio ?


Na verdade eu acho que você deve continuar usando o JDT para as compilações no Eclipse. O JDT é um compilador eficiente, próprio para builds incrementais típicas de um ambiente de desenvolvimento. O Projeto Eclipse já está bastante maduro e o Tomcat, em suas encarnações mais recentes, também usa o compilador JDT por padrão: http://tomcat.apache.org/tomcat-7.0-doc/jasper-howto.html).

Se você quiser fazer compilações “limpas” com o javac. Existem várias ferramentas para automação de builds (como o ANT e Maven) que podem ser integradas ao Eclipse.

Mas não foi por isso que eu recomendei que você  instalasse o JDK, a questão é que muitas ferramentas são dependentes do JDK. Por exemplo: geradores de código, Application Servers e mesmo Containers de Servlets (o próprio Tomcat pode ser configurado para usar o javac).
Além das dependências para o compilador em si, várias outras ferramentas do JDK fazem parte do dia a dia de desenvolvimento em Java (jar, javadoc, javap, jconsole, etc).
O código fonte da API do Java que vem junto com o JDK também é uma mão da roda durante o desenvolvimento. Você pode navegar para dentro dos fontes da API através do Eclipse, e os javadocs são lidos de forma bem mais eficiente a partir  do código fonte local do que das URLs da Oracle.
Para configurar essa última parte, vá no menu superior → Window → Preferences → Java → Installed JREs (árvore esquerda) → Clique no botão Find e coloque o caminho para o seu JDK. O Eclipse vai localizar a VM do JDK, os jars da plataforma e o zip com o código fonte da API. Tique no nome da configuração para usá-la por padrão. Para testar se deu certo, digite um código como:
 private String minhaString;

Então clique segurando o Ctrl em String para navegar para o código fonte da API (se não der certo, na tela de erro aponte o eclipse para o arquivo src.zip no diretório de instalação do seu JDK).
outra pergunta, qual a diferença de Open JDK e JDK , um é livro e outro não ? a oracle já tá comprado pelo JDK  ??


A versão resumida da história do Open JDK é que a Sun reconheceu a necessidade de abrir o código fonte da sua já gratuita plataforma de desenvolvimento Java sob licença Open Source... O prolema é que parte do código estava sujeito a restrições de copyright. Assim, a empresa doou boa parte do código fonte original e organizou uma iniciativa junto à comunidade para implementar uma alternativa aos componentes proprietários, criando um JDK 100% Open Source.
Hoje o Open JDK server de berço para o desenvolvimento de novas features para o JDK da Oracle (que continua gratuito). Apesar de ambos compartilharem boa parte do código fonte, eu pessoalmente acho o JDK da Oracle melhor acabado (algo tipo Fedora vs RHEL).

Em relação ao seu medo que a Oracle passe a cobrar pelo JDK oficial, minha opinião é que exista pouca ou nenhuma chance de que isso aconteça, mesmo conhecendo toda o histórico da Oracle. O fato é que o Java é um ecossistema muito, muito, muito grande, regido por diversas forças políticas em delicado equilíbrio. Nessa altura do campeonato, começar a cobrar pelo JDK seria um tiro no próprio pé.
Java já é a muitos anos a linguagem mais popular do mundo de acordo com o indice TIOBE (http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html). As venda de middleware, produtos e serviços para o ecossistema Java garantem um parte substancial do ganho de gigantes como IBM, SAP, Google, Red Hat e da própria Oracle.
Hoje existem vários VMs / SDKs abertos (Apache Harmony, OpenJDK, IcedTea, IKVM, etc) e comerciais (IBM V9, JRockit,  JET, SAPJVM, etc). Se a Oracle resolvesse começar a cobrar pelo JDK , isso criaria um iato de poder que prejudicaria a Oracle e seus Clientes...  
A cadeia de acontecimentos mais provável é que começariam a pipocar forks das VMs atuais com forte investimento das demais gigantes até que algum novo JDK e VM se tornassem padrões de mercado. O que eu quero dizer é que, na ponta do lápis, diferente do que aconteceu com o Solaris, deixar de distribuir um JDK “oficial” gratuitamente traria prejuízo imensurável para a Oracle. A companhia, desde antes de comprar a Sun, tem mantido uma política de forte investimento na plataforma para garantir seu espaço no ecossistema... A Oracle, mais do que ninguém, sabe o quanto vale o controle estratégico da plataforma, duvido muito que ela arriscaria sua posição só para tirar uns trocados vendendo JDKs.

Nossa, ficou grande para caramba a resposta hehehe. Vou guardar o resto para um (ou vários) futuros artigos na Java Magazine hehehe.
 
Responder

Gostei + 0

23/05/2011

Ricardo Santos

Então resumindo, vc tá me dizendo que o JRE é para executar os arquivos, e o eclipse tem seu próprio compilador ?


Exatamente.

se for isso realmente onde eu configuro no eclipse para
ele utiizar o compilador do JDK que eu baixei e não o seu próprio ?


Na verdade eu acho que você deve continuar usando o JDT para as compilações no Eclipse. O JDT é um compilador eficiente, próprio para builds incrementais típicas de um ambiente de desenvolvimento. O Projeto Eclipse já está bastante maduro e o Tomcat, em suas encarnações mais recentes, também usa o compilador JDT por padrão: http://tomcat.apache.org/tomcat-7.0-doc/jasper-howto.html).

Se você quiser fazer compilações “limpas” com o javac. Existem várias ferramentas para automação de builds (como o ANT e Maven) que podem ser integradas ao Eclipse.

Mas não foi por isso que eu recomendei que você  instalasse o JDK, a questão é que muitas ferramentas são dependentes do JDK. Por exemplo: geradores de código, Application Servers e mesmo Containers de Servlets (o próprio Tomcat pode ser configurado para usar o javac).
Além das dependências para o compilador em si, várias outras ferramentas do JDK fazem parte do dia a dia de desenvolvimento em Java (jar, javadoc, javap, jconsole, etc).
O código fonte da API do Java que vem junto com o JDK também é uma mão da roda durante o desenvolvimento. Você pode navegar para dentro dos fontes da API através do Eclipse, e os javadocs são lidos de forma bem mais eficiente a partir  do código fonte local do que das URLs da Oracle.
Para configurar essa última parte, vá no menu superior → Window → Preferences → Java → Installed JREs (árvore esquerda) → Clique no botão Find e coloque o caminho para o seu JDK. O Eclipse vai localizar a VM do JDK, os jars da plataforma e o zip com o código fonte da API. Tique no nome da configuração para usá-la por padrão. Para testar se deu certo, digite um código como:
 private String minhaString;

Então clique segurando o Ctrl em String para navegar para o código fonte da API (se não der certo, na tela de erro aponte o eclipse para o arquivo src.zip no diretório de instalação do seu JDK).
outra pergunta, qual a diferença de Open JDK e JDK , um é livro e outro não ? a oracle já tá comprado pelo JDK  ??


A versão resumida da história do Open JDK é que a Sun reconheceu a necessidade de abrir o código fonte da sua já gratuita plataforma de desenvolvimento Java sob licença Open Source... O prolema é que parte do código estava sujeito a restrições de copyright. Assim, a empresa doou boa parte do código fonte original e organizou uma iniciativa junto à comunidade para implementar uma alternativa aos componentes proprietários, criando um JDK 100% Open Source.
Hoje o Open JDK server de berço para o desenvolvimento de novas features para o JDK da Oracle (que continua gratuito). Apesar de ambos compartilharem boa parte do código fonte, eu pessoalmente acho o JDK da Oracle melhor acabado (algo tipo Fedora vs RHEL).

Em relação ao seu medo que a Oracle passe a cobrar pelo JDK oficial, minha opinião é que exista pouca ou nenhuma chance de que isso aconteça, mesmo conhecendo toda o histórico da Oracle. O fato é que o Java é um ecossistema muito, muito, muito grande, regido por diversas forças políticas em delicado equilíbrio. Nessa altura do campeonato, começar a cobrar pelo JDK seria um tiro no próprio pé.
Java já é a muitos anos a linguagem mais popular do mundo de acordo com o indice TIOBE (http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html). As venda de middleware, produtos e serviços para o ecossistema Java garantem um parte substancial do ganho de gigantes como IBM, SAP, Google, Red Hat e da própria Oracle.
Hoje existem vários VMs / SDKs abertos (Apache Harmony, OpenJDK, IcedTea, IKVM, etc) e comerciais (IBM V9, JRockit,  JET, SAPJVM, etc). Se a Oracle resolvesse começar a cobrar pelo JDK , isso criaria um iato de poder que prejudicaria a Oracle e seus Clientes...  
A cadeia de acontecimentos mais provável é que começariam a pipocar forks das VMs atuais com forte investimento das demais gigantes até que algum novo JDK e VM se tornassem padrões de mercado. O que eu quero dizer é que, na ponta do lápis, diferente do que aconteceu com o Solaris, deixar de distribuir um JDK “oficial” gratuitamente traria prejuízo imensurável para a Oracle. A companhia, desde antes de comprar a Sun, tem mantido uma política de forte investimento na plataforma para garantir seu espaço no ecossistema... A Oracle, mais do que ninguém, sabe o quanto vale o controle estratégico da plataforma, duvido muito que ela arriscaria sua posição só para tirar uns trocados vendendo JDKs.

Nossa, ficou grande para caramba a resposta hehehe. Vou guardar o resto para um (ou vários) futuros artigos na Java Magazine hehehe.
 





Anthony Accioly, Em Primeiro lugar quero te agradecer pela sua atenção e paciência, obrigado por tirar essas minhas dúvidas, você tem algum blog ou posta seus artigos aqui mesmo do dev ? Em segundo me ajudou muito sua explicação, estou terminando a instalação do eclipse aqui e vou ver se ele consegue pegar o javadoc local.
Responder

Gostei + 0

23/05/2011

Anthony Accioly

Fico muito feliz por ter ajudado. 
Estou tentando arranjar um tempo para escrever mais no meu blog. O endereço é http://a.accioly.7rtc.com.
Fora isso, você me encontra aqui e na stackoverflow.

Se tudo der certo, não se esqueça de atualizar o status do chamado para resolvido por favor.
Abraços,
Responder

Gostei + 0

24/05/2011

Ricardo Santos

Fico muito feliz por ter ajudado. 
Estou tentando arranjar um tempo para escrever mais no meu blog. O endereço é http://a.accioly.7rtc.com.
Fora isso, você me encontra aqui e na stackoverflow.

Se tudo der certo, não se esqueça de atualizar o status do chamado para resolvido por favor.
Abraços,



Anthony Accioly,

Quando eu clico em CRTL e String É PARA ele ir para o fonte da classe String ? pq aqui no meu caso ele foi para o String.class - que seria executavel não ?


Responder

Gostei + 0

24/05/2011

Anthony Accioly


 
Quando eu clico em CRTL e String É PARA ele ir para o fonte da classe String ? pq aqui no meu caso ele foi para o String.class - que seria executavel não ?
 


Isso, é para ir para o código fonte. Se você está recebendo um class file error significa que faltou associar os códigos fontes que vem junto com o JDK. Você deve fazer uma de duas coisas:   Clicar no botão "Attach Source" → External File → Apontar para o arquivo src.zip na pasta de instalação do JDK
  Ou então siga os passos para apontar o JRE indicado  na minha segunda resposta.
Abraços.
Responder

Gostei + 0

25/05/2011

Dyego Carmo

Resolvido ?

Se sim , poderia fechar ?

Valeu !
Responder

Gostei + 0

26/05/2011

Anthony Accioly



Quando eu clico em CRTL e String É PARA ele ir para o fonte da classe String ? pq aqui no meu caso ele foi para o String.class - que seria executavel não ?




Dyego, respondido três posts acima. :D
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar