Nastavení cesty sestavení Java

Tento oddíl popisuje nastavení cesty sestavení Java.  Cesta sestavení je cesta ke třídě (classpath) používaná k sestavení projektu Java (IJavaProject).

Cesta ke třídě je polem položek cesty ke třídě (IClassPathEntry), jež popisují dostupné typy.  Typy mohou být uvedeny formou zdrojového textu nebo binárního souboru, uspořádání položek cesty definuje pořadí vyhledávání interpretovaných typů během sestavování.

Cesta sestavení Java je obsažena ve struktuře prvku projektu Java.  Můžete v projektu vyhledávat kořeny fragmentu balíčku (IPackageFragmentRoot).  Každá z položek cesty ke třídě mapuje jeden nebo více kořenů fragmentu balíčku, které dále obsahují sadu fragmentů balíčku.

Cesta sestavení se samozřejmě odlišuje od cesty běhové komponenty Java, kterou lze definovat nezávisle na cestě sestavení.  (Další informace o běhová cestě ke třídě viz Spuštění kódu v jazyce Java.

Změna cesty sestavení

Cestu sestavení projektu lze změnit z programu s použitím setRawClasspath na prvek Java příslušného projektu.  Následující kód nastavuje cestu ke třídě (classpath) pro prostředek typu projekt:

	IProject project = ... // získat prostředek typu projekt
	IJavaProject javaProject = JavaCore.create(project);
	IClasspathEntry[] newClasspath = ...;
	javaProject.setRawClasspath(newClasspath, someProgressMonitor);
	

(Poznámka:  Termín "přímá" cesta ke třídě se používá ke zdůraznění skutečnosti, že proměnné použité k popisu poloh položky nejsou interpretovány.)

Cesta sestavení Java je uchovávána v souboru s názvem '.classpath' v souborové struktuře projektu.  Účelem tohoto souboru je sdílení nastavení cesty sestavení Java s ostatními prostřednictvím úložiště zdrojového kódu. Tento soubor by neměl být upravován ručně. V opačném případě může dojít k jeho porušení.

Položky cesty ke třídě

Položky cesty ke třídě lze definovat s použitím metod vytváření definovaných v JavaCore.  Položky cesty ke třídě mohou odkazovat na následující objekty:

Vzory pro vyloučení

Zdrojové položce cesty ke třídě může být přiřazen vzor pro vyloučení, který zamezuje zahrnutí určitých prostředků zdrojové složky do cesty ke třídě.  Použití vzorů umožňuje odfiltrování určitých úseků zdrojového stromu.  Všechny cesty vzoru pro vyloučení jsou relativní k položce cesty ke třídě a používají mechanizmus vzorů obdobný systému Ant.  Vzory pro vyloučení lze použít k zadání vnořené zdrojové složky tak, že vnější vzor vylučuje vnitřní vzor.

Další informace o vzorech pro vyloučení viz getExclusionPatterns().

Rozhraní API projektu Java isOnClasspath před zjišťováním, zda je určitý prostředek na cestě ke třídě, zkontroluje vzory pro zahrnutí a vyloučení.

Poznámky:

Vzory pro zahrnutí

Zdrojové položce cesty ke třídě může být přiřazen rovněž zdroj pro zahrnutí, který výslovně definuje prostředky, které mají být dostupné v cestě ke třídě.  Nejsou-li zadány žádné vzory pro zahrnutí, bude použit zdroj ze všech relevantních souborů ve stromu prostředků s kořenem ve vstupní cestě tohoto zdroje. Zadáte-li jeden nebo několik vzorů pro zahrnutí, budou zahrnuty pouze uvedené části stromu prostředků. Všechny cesty musejí být zadány jako relativní cesty. Budou interpretovány relativně ke vstupní cestě tohoto zdroje. Vzory souborů rozlišují malá a velká písmena. Soubor, jehož název odpovídá jednomu z těchto vzorů, příp. několika vzorům, je zahrnut do kořenu fragmentu příslušného balíčku, pokud není vyloučen jedním nebo několika vzory pro vyloučení této položky.

Další informace o syntaxi a sémantice vzorů cest viz getExclusionPatterns(). Nepřítomnost vzorů pro zahrnutí je sémanticky ekvivalentní s výslovným vzorem pro zahrnutí **.

Rozhraní API projektu Java isOnClasspath před zjišťováním, zda je určitý prostředek na cestě ke třídě, zkontroluje vzory pro zahrnutí a vyloučení.

Příklady:

Rozpoznání cesty ke třídě

Proměnné a pořadače cesty ke třídě umožňují definovat dynamicky vázané položky cesty ke třídě. Rozhraní API cesty ke třídě rozlišuje mezi čistou a vyřešenou cestou ke třídě.   Čistá cesta ke třídě je cestou projektu Java původně nastavenou s použitím setRawClasspath a lze ji nadále dotazovat prostřednictvím getRawClasspath projektu.  Vyřešená cesta ke třídě může být dotazována s použitím getResolvedClasspath. Tato operace spouští inicializaci proměnných a pořadačů, které jsou zapotřebí k vyřešení cesty ke třídě.  Mnohé úkony obsluhy modelu Java způsobují vyřešení cesty sestavení Java.  Vyřešení cesty sestavení je zapotřebí například při výpočtu kořenů fragmentu balíčku projektu.