Configurando o CLASSPATH
Problema: você quer executar um programa Java ou incluir uma biblioteca externa na aplicação que você está executando.
Solução: configurar a variável CLASSPATH para a pasta que o usuário definiu as classes Java ou arquivos Java(JAR) que você precisa ter acesso para executar sua aplicação.
Vamos dizer que você tenha uma pasta chamada JAVA_DEV localizada em algum lugar do seu HD e sua aplicação precisa de um arquivo desta pasta.
Neste caso você vai precisar executar o comando: set CLASSPATH=(caminho do arquivo)\some.jar
No Linux muda a palavra inicial ao invés de ser set é export.
O comando javac fornece uma opção para especificar a locação de recursos que precisa para ser carregado com a aplicação.
A configuração do CLASSPATH é a mesma para todas as plataformas, que é a seguinte: javac -classpath (caminho do arquivo)\some.jar
O -classpath pode ser substituído pelo -cp.
Como funciona: Java implementa o conceito de classpath. Significa que uma pasta pode ser especificada na variável de ambiente CLASSPATH. Você pode especificar o classpath via comando: -classpath.
Quando o programa é executado pela JVM, há passos a serem seguidos:
1. As classes que são importantes para o Java que contém a sua instalação são carregadas.
2. Pacotes que serão utilizados da JDK são carregados.
3. Pacotes, classes, arquivos JAR e bibliotecas são carregadas por meio da especificação classpath.
Você pode precisar acessar mais de uma pasta ou arquivos JAR para a sua aplicação. Este é o caso das dependências que estão localizadas em mais de uma locação.
Para isto, basta separar os caminhos dos arquivos por meio de (ponto e vírgula) no Windows e (dois pontos no Linux) na especificação da variável CLASSPATH. Por exemplo:
javac -classpath \JAVA_DEVE\some.jar; \JAVA_LIB\myjar.jar
Você pode precisar de todos os arquivos de uma pasta. Para adicionar todos na variável classpath faça o seguinte:
javac -classpath \JAVA_DEV\* Se dentro da pasta JAVA_DEV houver outras pastas, os arquivos destas pastas não serão incluindo na variável classpath.
Deixe um comentário