Estou usando doclets javadoc com gradle, então preciso usar o pacote tools.jar, que está na pasta lib do jdk (1.6.0_26 no meu caso).
O ponto é que o gradle não aceita automaticamente, então eu estava adicionando esse pacote de ferramentas à minha pasta libs e, em seguida, adicionando-o ao dependencies.gradle.
Agora eu quero levá-lo diretamente da minha casa JDK para o meu dependencies.gradle. Existe uma maneira de fazer isso? Eu tentei o próximo em minhas dependencies.gradle:
compile files("${System.properties['java.home']}/lib/tools.jar")
Mas não o encontra durante a compilação.
Respostas:
Eu tive esse problema quando estava tentando executar comandos através da CLI.
Houve um problema com o sistema olhando para a pasta JRE, ou seja
D:\Program Files\Java\jre8\bin
. Se olharmos para lá, não háTools.jar
, daí o erro.Você precisa descobrir onde
JDK
está, no meu caso:,D:\Program Files\Java\jdk1.8.0_11
e se você olhar nolib
diretório, veráTools.jar
.O que eu fiz, criei uma nova variável de ambiente
JAVA_HOME
:E então você precisa editar sua variável PATH para incluir JAVA_HOME, ou seja,
%JAVA_HOME%/bin;
Abra novamente o prompt de comando e deve executar.
fonte
%JAVA_HOME%\lib;
não está nabin
pasta.%JAVA_HOME%/bin
e%JAVA_HOME%/lib
àPath
variável então?Encontrei. A propriedade do sistema 'java.home' não é variável de ambiente JAVA_HOME. JAVA_HOME aponta para o JDK, enquanto java.home aponta para o JRE. Veja essa página para mais informações.
Soo ... Meu problema era que meu ponto de partida era a pasta jre (C: \ jdk1.6.0_26 \ jre) e não a pasta jdk (C: \ jdk1.6.0_26) como eu pensava (tools.jar está no C : pasta \ jdk1.6.0_26 \ lib). A linha de compilação em dependencies.gradle deve ser:
fonte
Eu recebi o mesmo erro usando o Eclipse tentando executar uma tarefa Gradle. Toda vez que executo um comando (ou seja, guerra), o processo gera uma exceção como:
Tentei a solução listada neste post, mas nenhum deles resolveu esse problema. Aqui está a minha solução:
Corra novamente, divirta-se!
fonte
Acabei de adicionar um
gradle.properties
arquivo com o seguinte conteúdo:fonte
~/.gradle/gradle.properties
arquivo, adicionandoorg.gradle.java.home=/usr/lib/jvm/java
. Obras para me no Fedora 24.Eu tive um caso semelhante usando o Ubuntu . A máquina tinha apenas o JRE instalado. Então, acabei de executar o comando abaixo para instalar o JDK .
sudo apt install openjdk-8-jdk
fonte
Eu também estava lutando por esta solução. Encontrei uma maneira melhor com o Gradle, conforme descrito aqui . Podemos obter as informações da JVM / JDK da própria Gradle.
Tão simples.
fonte
compile
vez deruntime
NullPointerException
.No CentOS7, o pacote de desenvolvimento instala o tools.jar. O arquivo não está presente no java-1.8.0-openjdk
sudo yum install java-1.8.0-openjdk-devel
fonte
Adicione isto a
gradle.properties
:fonte
org.gradle.java.home=C:\\Program Files\\Java\\jdk1.8.0_144\
.Pode demorar dois anos, mas encontrei o mesmo problema recentemente e esta foi a solução que encontrei após encontrar este post :
Deverá funcionar se java.home apontar para um diretório que não esteja no diretório JDK e até no Mac OS, onde você teria classes.jar em vez de tools.jar.
fonte
Com o Centos 7, descobri que apenas o JDK possui
tools.jar
, enquanto o JRE não possui . Eu instalei o Java 8 JRE (yum install java-1.8.0-openjdk
), mas não o JDK (yum install java-1.8.0-openjdk-devel
).A instalação do último resolve o problema. Além disso, lembre-se de definir
JAVA_HOME
.fonte
No Windows 10, encontro o mesmo problema e foi assim que corrigi o problema;
Advance System Settings>Environment Variables>System Variables
C:\ProgramData\Oracle\Java\javapath
C:\Program Files\Java\jdk1.8.0_162
fonte
No meu sistema (Win 10, JRE 1.8.0, Android Studio 3.1.2, Gradle 4.1), não há
tools.jar
no diretório JRE (C:\Program Files\Java\jre1.8.0_171
).No entanto, eu o encontrei
C:\Program Files\Android\Android Studio\jre\lib
e tentei definirJAVA_HOME=C:\Program Files\Android\Android Studio\jre
Isso funciona (para mim)!
fonte
org.gradle.java.home=E:\\Android Studio\\jre
Linux
Abra
/etc/environment
em qualquer editor de texto como nano ou gedit e adicione a seguinte linha:janelas
Em Variáveis do sistema, clique no botão Adicionar e depois nas seguintes linhas:
em Nome da variável:
JAVA_HOME
em valor variável:
C:\Program Files\Java\jdk1.x.x_xxx
onde a
x.x_xxx
versão do jdk você pode obter sua versão do jdk daquiC:\Program Files\Java
Em Variáveis do sistema, selecione Caminho, clique em Editar, clique em novo botão e depois na seguinte linha:
%JAVA_HOME%/bin;
fonte
JAVA_HOME="/usr/lib/jvm/java-openjdk"
Isso funcionou para mim:
Eu estava recebendo mensagem
fonte
Se você usa o terminal para compilar e tem esse erro, pode apontar para o jdk incluído no android studio no seu
gradle.properties
arquivo:fonte
Como outras respostas, defino a propriedade org.gradle.java.home no arquivo gradle.properties . Mas o caminho com \ separadores não funcionou (baseado no Windows 10):
Então, ao invés de
eu tive que usar
então a compilação foi bem sucedida
O problema é que o projeto é construído com o JRE em vez do JDK e, como eu o construí a partir do eclipse, isso também funcionou:
fonte
No meu caso (Windows 10) após a atualização do Java, perdi minhas variáveis de ambiente. Por isso, corrigi adicionei as variáveis novamente, com base nas etapas a seguir https://confluence.atlassian.com/doc/setting-the-java_home-variable-in -windows-8895.html
fonte
Eu resolvi o problema desta maneira:
fonte
C:\Program Files (x86)\Java\jre1.8.0_211
eC:\Program Files (x86)\Java\jre1.8.0_251
Você garantiu que o tools.jar o fizesse no caminho da classe de compilação? Talvez o caminho esteja incorreto.
fonte
Adicionar o caminho JDK através da guia JAVA_HOME em "Open Gradle Run Configuration" resolverá o problema.
fonte
Eu tentei a maioria das opções principais, mas parece que havia algo errado com a configuração do meu ambiente para que elas não ajudassem. O que resolveu a questão para mim foi re-instalar
jdk1.8.0_201
ejre1.8.0_201
e isso resolveu o erro para mim. Espero que ajude alguém.fonte