Definindo o Caminho de Construção Java

Esta seção descreve como definir o caminho de construção Java, isto é, o classpath utilizado para construção de um projeto Java. Um classpath é uma matriz de contas de entradas de classpath para tipos disponíveis no formato de origem ou binário, utilizadas para localizar tipos disponíveis. A ordem dessas entradas define a precedência dos tipos disponíveis.

O caminho de construção Java também determina a estrutura de um elemento de projeto Java, uma vez que todas as raízes de fragmento de pacote originam-se diretamente do caminho de construção Java (cada entrada é mapeada para uma ou mais raízes de fragmento de pacote; consulte getPackageFragmentRoots).

Esta seção não descreve o caminho de tempo de execução Java que pode ser definido separadamente; consulte a seção relacionada sobre como executar programas Java.

Alterando o Caminho de Construção

É possível alterar através de programação o caminho de construção de um projeto utilizando setRawClasspath no elemento Java do projeto correspondente, por exemplo:

	IProject project = ... // obter algum recurso de projeto
	IJavaProject javaProject = JavaCore.create(project);
	IClasspathEntry[] newClasspath = ...;
	javaProject.setRawClasspath(newClasspath, someProgressMonitor);
	
Observe que também existe uma variante de setRawClasspath que permite que o caminho de construção Java e a localização de saída do projeto sejam definidos ao mesmo tempo.

O caminho de construção Java permanece em um arquivo chamado '.classpath' na localização do projeto. A finalidade desse arquivo é fornecer uma maneira de compartilhar as definições do caminho de construção Java com outros através de algum repositório de código fonte. Especificamente, esse arquivo não deve ser editado manualmente, pois poderá ser danificado.

Entradas de Classpath

As entradas de classpath podem ser definidas com os métodos de fábrica definidos em JavaCore, para que se possa fazer referência a um dos seguintes:

Resolução do Classpath

Devido a presença de entradas ligadas dinamicamente (variáveis e contêineres de classpath), o Núcleo do JDT distingue a noção entre um classpath não processado e um classpath resolvido. O classpath não processado é aquele definido originalmente no projeto Java utilizando setRawClasspath e pode ser consultado posteriormente solicitando getRawClasspath ao projeto.

Também é possível consultar o classpath resolvido de um projeto utilizando getResolvedClasspath. Se necessário, esta operação disparará a inicialização de variável(is) e/ou contêiner(es) envolvido(s). Observe que várias operações de Gabarito Java fazem com que o caminho de construção Java seja resolvido implicitamente. Por ex., calcular as raízes de fragmento de pacote de um projeto requer a resolução do caminho de construção.

 Copyright IBM Corporation e outros 2000, 2002. Todos os Direitos Reservados.