Konfigurace sestavení
Mechanizmus sestavení se řídí konfigurací sestavení. Konfigurace sestavení
pro jednotlivý modul plug-in, fragment nebo funkci se nachází v souboru
build.properties pro příslušný prvek.
Průvodci vytvořením projektu prostředí PDE generují soubor build.properties
při vytváření projektů modulů plug-in. Soubor obsahuje informace o tom, jak zkompilovat
zdrojové složky do souborů JAR. Tyto informace lze nepřímo aktualizovat na stránce
Běhová komponenta v editoru manifestu. Lze je také upravovat přímo pomocí příslušného editoru.
Prostředí PDE poskytuje pro build.properties jednoduchý editor, který má pohledy formuláře a zdroje.
Soubor samotný má formát vlastností prostředí Java. Musíte poskytnout množství klíčů
a jejich odpovídající hodnoty. Více hodnot se odděluje použitím čárky jako oddělovače.
Společné vlastnosti
- bin.includes - Uvádí soubory, které budou zahrnuty v binární verzi sestavovaného modulu plug-in;
- bin.excludes - Uvádí soubory, které se mají vyloučit z binárního sestavení.
- qualifier - Když verze prvku končí znaky .qualifier, udává, jakou hodnotou se má ".qualifier" nahradit. Hodnotou vlastnosti může být buď context, <hodnota>, nebo none.
Hodnota "context" vygeneruje datum podle systémového data, nebo použije značky CVS, pokud je sestavení automatizováno. "Hodnota" je skutečnou hodnotou. Hodnota "none" příponu ".qualifier" odebere. Pokud je vlastnost vynechána, použije se kontext.
- custom=true - Označuje, že skript sestavení byl vytvořen ručně, nikoliv generován automaticky. Na žádnou jinou hodnotu se tedy nebere ohled.
Vlastnosti specifické pro moduly plug-in
- source.<library> - Uvádí zdrojové složky, které budou kompilovány (např. source.xyz.jar=src/, src-ant/).
Pokud je knihovna ve vašem souboru plugin.xml nebo manifest.mf uvedena, hodnota by se měla shodovat.
- output.<library> - Uvádí výstupní složku pro přijetí výsledku kompilace.
- source.<library> - Uvádí soubory, které by neměly být kopírovány kompilátorem v knihovně.
- extra.<library> - Další cesty ke třídě použité k provedení automatického sestavení. Cesty ke třídě mohou být buď relativními cestami, nebo adresami URL platformy, které odkazují na moduly plug-in a fragmenty vašeho vývojového prostředí (např. ../someplugin/xyz.jar, platform:/plugins/org.apache.ant/ant.jar).
Adresy URL platformy jsou doporučeny pomocí relativních cest.
- manifest.<library> - Označuje soubor, který bude použit jako manifest pro knihovnu. Soubor musí být umístěn v jedné ze zdrojových složek použitých jako vstup pro jar.
- src.includes - Uvádí soubory, které se mají zahrnout do sestavení zdroje.
- src.excludes - Uvádí soubory, které se mají vyloučit ze sestavení zdroje.
- jars.extra.classpath - (Nepřípustné) má stejný vliv jako extra.<library>, s výjimkou toho, že se položky použijí pro všechny knihovny.
- jars.compile.order - Definuje pořadí, v němž se mají soubory JAR sestavit (v případě, že existuje více knihoven).
Hodnoty definované pro klíče končící znaky "includes" nebo "excludes" se vyjadřují jako "vzorky" pro Ant. Standardní formáty poskytují očekávané výsledky. Například "*.jar" označuje všechny soubory
JAR v adresáři nejvyšší úrovně. Standardně vzorky nejdou do hloubky. Chcete-li
například popsat všechny soubory Java, měli byste použít vzorek "**/*.java".
Vzorek "**" odpovídá libovolnému počtu úrovní adresářů.
Podobně, chcete-li popsat celé podstromy, použijte "xyz/".
Vlastnosti specifické pro funkce
- root - Uveďte seznam souborů a složek, které musí být obsaženy v kořenovém adresáři produktu. Podporované hodnoty jsou:
- <folderName> - Relativní cesta ke složce, která se má zkopírovat.
- file:<fileName> - Relativní cesta k souboru, který se má zkopírovat.
- absolute:<folderName> - Absolutní cesta ke složce, která se má zkopírovat.
- absolute:<fileName> - Absolutní cesta k souboru, který se má zkopírovat.
- root.<config> - Uveďte seznam souborů a složek, které musí být obsaženy v kořenovém adresáři produktu, když se sestavuje pro určenou konfiguraci. Hodnota "config" se skládá ze tří (3) segmentů konfigurace oddělených tečkou.
- root.permissions.<permissionValue> - Uvádí soubory a složky pro chmod pro danou hodnotu. Odkazy na složky musejí končit na a '/'.
- root.permissions.<config>.<permissionValue> - Uvádí soubory a složky pro chmod pro danou hodnotu pro danou konfiguraci. Odkazy na složky musejí končit na '/'.
- root.link - Uveďte páry souborů a složek (oddělené čárkou), které se mají symbolicky propojit. První položka udává zdroj (cíl v terminologii systému unix) a druhá položka název propojení.
- root.link.<config> - Seznam párů souborů a složek oddělených čárkami, které se mají pro konkrétní konfiguraci symbolicky propojit. První položka udává zdroj (cíl v terminologii systému unix) a druhá položka název propojení.
- generate.feature@<featureID> - Označuje, že zdrojová funkce featureId bude zdrojovou funkcí pro funkci, která je zadána jako hodnota této vlastnosti. Hodnoty uvedené po první čárce označují prvky, které se mají načíst z úložiště.
- generate.plugin@<pluginId> - Označuje, že modul plug-in pluginId bude zdrojovým modulem plug-in pro ty, co jsou uvedeny jako hodnota této vlastnosti.
Následující příklad byl vyňat ze souboru build.properties funkce org.eclipse.platform.
bin.includes=epl-v10.html,eclipse_update_120.jpg,feature.xml,feature.properties,license.html
root=rootfiles,file:../../plugins/org.eclipse.platform/startup.jar,configuration/
root.permissions.755=eclipse
root.linux.motif.x86=../../plugins/platform-launcher/bin/linux/motif,linux.motif
root.linux.motif.x86.link=libXm.so.2.1,libXm.so.2,libXm.so.2.1,libXm.so
root.linux.motif.x86.permissions.755=*.so*