Tato část uvádí některé z nejzajímavějších nebo nejvýznamnějších změn provedených ve vývojářských nástrojích Java pro Eclipse verze 3.2. Jsou seskupeny do:
Viz také dokument Novinky platformy Eclipse ve verzi 3.2, kde najdete změny v platformě.
Opětovná deklarace Java |
|
Opětovná deklarace Introduce Indirection |
Opětovná deklarace Introduce Indirection je novou opětovnou deklarací, která umožňuje přesměrovat všechny volající subjekty metody na novou metodu. Nová metoda pak volá původní metodu. Výchozí implementaci nové metody můžete podle potřeby nahradit libovolnou vlastní implementací. Takový mechanizmus je užitečný v případech, kdy je třeba do metody zavést nové chování, ale:
Mechanizmus opětovné deklarace používejte pro opravy chyb původní metody nebo jako rychlý způsob pro přidání kódu před nebo za volání metody. Opětovnou deklaraci Introduce Indirection použijete tak, že vyvoláte Předeklarovat > Opětovná deklarace Introduce Indirection..., zadáte název a deklarační třídu pro novou metodu. Tato metoda se přidá k vybrané deklarační třídě. Všechny odkazy se aktualizují tak, aby se volala nová metoda. |
Opětovná deklarace Extrahovat supertřídu |
Nová opětovná deklarace s názvem Extrahovat supertřídu extrahuje společnou supertřídu z množiny sourozeneckých typů. Po provedení opětovné deklarace se vybrané sourozenecké typy stanou přímými podtřídami extrahované supertřídy. Kromě toho lze díky mechanizmu Extrahovat supertřídu použít extrahovanou supertřídu kdekoli v kódu. V následujícím příkladu představují Další obrázek ukazuje hierarchii typů po extrahování Tuto opětovnou deklaraci vyvoláte příkazem Opětovná deklarace > Extrahovat supertřídu.... |
Průvodce úklidem |
Nástroj Úklid lze vyvolat na libovolném počtu zdrojových souborů Java, balíčcích nebo na celém projektu Java. Pomáhá s:
Zde je několik příkladů, co lze v rámci úklidu provádět:
Převod kódu kompatibilního s Java 1.4 do 5.0 pomocí Úklidu:
Ke spuštění tohoto průvodce vyberte projekt, balíček nebo soubor a použijte Zdroj > Úklid.... |
Historie opětovných deklarací |
Většina opětovných deklarací nabízených prostřednictvím JTD je nyní uvedena v Historii opětovných deklarací. Infrastruktura opětovné deklarace ukládá podrobné informace o opětovných deklaracích, které byly ve vašem pracovním prostoru provedeny.
|
Vytvořit a použít skripty opětovné deklarace |
Opětovné deklarace provedené ve vašem lokálním pracovním prostoru lze nyní exportovat do Skriptu opětovné deklarace a znovu je použít v libovolném pracovním prostoru. Tyto skripty opětovné deklarace lze použít v různých scénářích, jako např. při automatických opravách změn rozhraní API mezi vrstvami softwaru nebo při poskytování oprav s bohatou sémantikou. Vytvořit skript opětovné deklarace z historie opětovných deklarací pomocí Předeklarovat > Vytvořit skript... Chcete-li použít vygenerovaný skript opětovné deklarace v libovolném pracovním prostoru, použijte Předeklarovat > Použít skript... Nový bod rozšíření umožňuje, aby autoři modulů plug-in přispěli podporou skriptů opětovné deklarace pro nové i stávající opětovné deklarace.
Podrobnosti viz bod rozšíření |
Export souboru JAR s opětovnými deklaracemi |
Při exportu souboru JAR z pracovního prostoru vám Průvodce exportem souboru JAR nabídne volbu pro zahrnutí informací o opětovné deklaraci do souboru JAR. Klienti pak mohou migrovat starou verzi souboru JAR do nové pomocí opětovné deklarace Předeklarovat > Migrovat soubor JAR.... Pokud je právě vybrán soubor JAR, můžete volitelně použít příkaz Cesta sestavení > Migrovat soubor JAR.... Tato opětovná deklarace automaticky aktualizuje veškerý kód závislý na staré verzi souboru JAR tak, aby používal novou verzi souboru JAR. |
Opětovné deklarace zohledňující rozhraní API |
Existuje celá řada stávajících opětovných deklarací, které byly rozšířeny pro podporu kompatibility rozhraní API tím, že uchovávají původního člena jako delegáta pro předeklarovaného člena:
Generování člena-delegáta pro zachování kompatibility rozhraní API lze zpřístupnit označením zaškrtávacího políčka Uchovávat původní metodu jako delegáta pro přejmenovanou metodu v dialogovém okně opětovné deklarace. |
Přejmenovat typ aktualizuje podobně pojmenované prvky |
Opětovná deklarace Přejmenovat typ může nyní přejmenovat proměnné a metody s názvem podobným přejmenovanému typu. Tato funkce pomáhá uchovávat názvy metod a proměnných synchronizované s názvy typů. Chcete-li vyvolat tuto opětovnou deklaraci, vyberte typ a použijte Předeklarovat > Přejmenovat... |
Opětovná deklarace Přejmenovat balíček zajišťuje přejmenování podbalíčků |
Opětovná deklarace Přejmenovat balíček nyní na požadavek také zajistí přejmenování podbalíčků. V tomto příkladu se Chcete-li vyvolat tuto opětovnou deklaraci, vyberte balíček a použijte Předeklarovat > Přejmenovat... |
Filtrování náhledu opětovné deklarace |
Stránka Náhled opětovné deklarace nyní podporuje filtrování změn. Toto je zvláště užitečné v případech, kdy je při přejmenování prvků Java vyžádána aktualizace textových shod v komentářích a řetězcích. Snímek obrazovky zobrazuje dialogové okno přejmenování s filtrovanými textovými shodami při přejmenování třídy Nyní lze filtrovat i změny týkající se viditelnosti prvků Java. |
Editor Java |
|
Přizpůsobitelná obsahová asistence |
Při opakovaném vyvolání obsahové asistence (Ctrl+Space na většině platforem) se nyní postupné prochází různými kategoriemi návrhu. Svým oblíbeným kategoriím návrhů můžete přiřadit různé klávesové zkratky a použít
Nový bod rozšíření |
Podpora metody camel case v dokončování kódu |
Dokončování kódu nyní podporuje vzorky metody camel case. Například dokončení pro NPE navrhne NullPointerException. Tuto podporu lze znepřístupnit pomocí předvolby Zobrazit shody typu camel case na stránce předvoleb
|
Rychlá nabídka pro obklopení kódu |
Nová rychlá nabídka Obklopit pomocí umožňuje obklopit vybrané řádky kódem. Nabídku lze rozšířit vlastními šablonami. Šablony nyní zohledňují proměnné, které je třeba vytáhnout nebo převést na final. Pro přímé zobrazení nabídky použijte Zdroj > Obklopit pomocí nebo stiskněte Alt+Shift+Z. Své vlastní šablony můžete přidávat na stránce předvoleb Java > Editor > Šablony. Šablona potřebuje pouze proměnnou |
Nové rychlé opravy |
Bylo přidáno několik rychlých oprav, například:
|
Podpora kategorie |
Kategorie lze definovat v komentářích Javadoc pro typy, metody a pole pomocí značky Kategorie se zobrazují v pohledech Osnova a Členové a v Rychlé osnově. Nabídka Zobrazit umožňuje vybrat viditelné kategorie. |
Všechny členy lze složit |
Je-li zpřístupněno skládání, pole, inicializátory a jejich komentáře lze složit stejným způsobem jako metody. Nyní existují nové příkazy skládání pro sbalení všech komentářů, sbalení všech členů a resetování struktury skládání. Tyto příkazy jsou k dispozici v kontextové nabídce Skládání editoru Java na vertikálním pravítku. |
Podpora pravítka a osnovy pro soubory Java mimo pracovní prostor |
Editor Java nyní zobrazuje vertikální pravítka, přičemž stránky Osnova i Rychlá osnova mohou zobrazovat osnovu pro externí soubory Java a soubory Java z úložišť. |
Kompilátor jazyka Java
|
|
Shoda s Java SE 6.0 |
Nyní je plně podporována shoda s prostředím Java SE 6.0.
Konkrétně platí, že se nyní generují atributy |
Analýza odkazů null |
Kompilátor jazyka Java nyní umí provádět základní analýzu odkazů null pro lokální proměnné. Tuto volitelnou diagnostiku lze zpřístupnit na stránce předvoleb
Vezměte na vědomí, že analýza je poměrně konzervativní a zaměřuje se na výslovná pravidla přiřazení. Zvažuje pouze případy, kde je něco podezřelého (např. pokud se později provádí kontrola na null), a nestěžuje si na všechny možné případy. V režimu shody 5.0 lze varování na odkazy null potlačit pomocí |
Zlepšené zotavení z chyb syntaxe |
Interní syntaktický analyzátor jazyka Java je nyní mnohem odolnější vůči chybám syntaxe. Na platformě Eclipse 3.1 se při výskytu chyby syntaxe již další chyby nezobrazovaly. Syntaktický analyzátor se nyní umí z příkazů s chybami zotavit a pokračovat v další analýze. V následujícím příkladu je zjištěn neplatný odkaz na metodu Takto je možné například provádět opětovnou deklaraci, která toleruje chyby syntaxe pouze u jednoho souboru. Nyní je například možné přejmenovat nebo extrahovat lokální proměnnou v horní části metody, která dosud nebyla dokončena. |
Práce s konfigurovatelnými chybami jako s nezávažnými |
Volba Považovat konfigurovatelné chyby za závažné na stránce předvoleb
Pokud je tato volba znepřístupněna, kompilovaný kód lze spustit i přes existenci chyb v kódu. |
Detekce nadbytečných značek $NON-NLS$ |
Nadbytečné značky Vytváření zpráv lze zapínat a vypínat pomocí stejné předvolby, která slouží k detekci neexternalizovaných řetězců. Lze jej nastavit na stránce předvoleb
Chcete-li nadbytečné značky odebrat, použijte rychlou opravu (Ctrl+1), nebo stiskněte Ctrl+1, Ctrl+Enter pro odebrání všech nadbytečných značek v rámci kompilační jednotky. |
Detekce použití typu raw |
Použití typu raw je nyní detekováno. Typ raw je odkazem na nějaký generický typ bez argumentu typu (např.
Tuto volitelnou diagnostiku lze zpřístupnit nezávisle na nekontrolovaných typových operacích na stránce předvoleb
Toto varování lze potlačit přidáním Byla také implementována rychlá oprava na pomoc při řešení problému s použitím typu raw. |
Detekce přiřazení parametru metody |
Přiřazování parametrům metody se považuje za nesprávný postup. Pokud chcete taková přiřazení detekovat a hlásit, otevřete stránku předvoleb
|
Detekce nepoužívaných štítků |
Kompilátor jazyka Java nyní detekuje nepoužívané štítky příkazů. Tuto volitelnou diagnostiku lze zpřístupnit na stránce předvoleb
|
Detekce neúspěchu větvení Switch case |
Kompilátor jazyka Java může nyní zjistit, zda lze vstoupit do příkazu case při neúspěchu v předchozím příkazu case. Jsou povoleny prázdné příkazy case. Tuto volitelnou diagnostiku lze zpřístupnit na stránce předvoleb
Byla implementována rychlá oprava přidávající příkaz |
Zlepšení výkonu pro velké soubory .jar |
Limit velikosti pro interní mezipaměť modelu Java je nyní funkcí maximální velikosti haldy (argument -Xmx systému VM na většině systémů JVM) předané systému Java Virtual Machine, na kterém běží integrované vývojové prostředí platformy Eclipse. Zvýšení velikosti haldy má znatelný vliv na zlepšení výkonu v případě, že jsou na cestě ke třídě sestavení velké soubory .jar. |
Znovuvytvoření upravených souborů .class |
Tvůrce Java může nyní pomocí původního zdroje znovu vytvořit upravené nebo odebrané soubory .class ve výstupní složce. Toto lze řídit na stránce předvoleb
|
Pohled dokumentace Javadoc a popisy z připojené dokumentace Javadoc |
Pohled dokumentace Javadoc a události hover dokumentace Javadoc nyní pro knihovny bez připojeného zdroje extrahují informace z připojené dokumentace Javadoc. |
Nástroje JUnit |
|
Podpora JUnit 4 |
Podpora JUnit byla aktualizována pro spouštění a psaní testů JUnit 4. Další informace o JUnit 4 viz stránky www.junit.org.
|
Historie zobrazení JUnit |
Pohled utility JUnit nyní může zpracovat více souběžných testovacích běhů. Pomocí nové historie můžete přepínat mezi aktivními a naposledy provedenými testovacími běhy. Testy lze znovu spustit z historie bez zastavování již spuštěných testů. Toto funguje s utilitou JUnit 3 a také JUnit 4. |
Ladicí program Java |
|
Prováděcí prostředí |
Prováděcí prostředí popisuje schopnosti běhové komponenty
- například J2SE-1.4. Můžete uvést prostředí JRE použitá pro spouštění, ladění a sestavování na základě odkazování na prováděcí prostředí.
Nová stránka předvoleb
Cesty sestavení nebo konfigurace spuštění odkazující se na prováděcí prostředí jsou více přenosné než ty, které se odkazují na explicitní prostředí JRE, protože prováděcí prostředí JRE lze vyřešit nezávisle na jeho názvu. Chcete-li uvést prováděcí prostředí pro spouštění a sestavování, použijte kartu JRE nebo průvodce Upravit knihovnu. |
Proměnná spuštění vlastnosti systému |
Nová proměnná spuštění umožňuje dynamicky uvádět vlastnosti systému jako program jazyka Java a argumenty systému VM z běhové komponenty Eclipse. Proměnná přijímá jediný argument představující název vlastnosti systému, která se má vyřešit v době spuštění. Například na vlastnost systému java.home by se odkazovalo pomocí ${system_property:java.home}. |
Podpora vyhodnocení pro pole |
Nová verze podporuje vyhodnocení a obsahovou asistenci pro pole jazyka Java. Při odkazech na vybrané pole používejte |
Skupiny jednotkových procesů jazyka Java |
V pohledu Ladění nyní můžete zobrazovat skupiny jednotkových procesů tak, že přepnete volbu Zobrazit skupiny jednotkových procesů v nabídce Zobrazit. |
Exportované položky běhové cesty ke třídě |
Běhovou cestu ke třídě lze nakonfigurovat tak, aby obsahovala pouze exportované položky z cesty sestavení. Ve výchozím nastavení obsahuje běhová cesta ke třídě všechny položky (exportované i neexportované). Na kartě Cesta ke třídě vyberte výchozí položku a použijte tlačítko Upravit... pro konfiguraci volby. |
Pozastavit jednotkový proces oproti Pozastavit VM |
Na stránku předvoleb
|
Různé |
|
Indikátor typu Java |
Chcete-li zjistit, jaký je první typ v kompilační jednotce nebo souboru třídy, zpřístupněte volbu Indikátor typu Java na stránce předvoleb
|
Najít poškozené externalizované řetězce |
Nová akce může hledat poškozené externalizované řetězce. Hledání hlásí chybějící, nepoužívané a duplicitní klíče. Ke spuštění hledání vyberte soubor vlastností, balíček nebo celý projekt a použijte Zdroj > Najít poškozené externalizované řetězce |
Zlepšená podpora pro mechanizmus externalizace řetězců platformy Eclipse |
Pro mechanizmus externalizace řetězců platformy Eclipse je nyní k dispozici stejná podpora jako pro tradiční externalizaci řetězců. Přidružená externalizovaná hodnota se zobrazuje při události hover, když ponecháte kurzor myši v editoru Java nad klíčem pro externalizovaný řetězec. Klepnutím na Ctrl+Click přejdete přímo k položce v odpovídajícím souboru vlastností. V editoru souboru vlastností můžete použít Ctrl+Click ke zjištění, zda je klíč v kódu použit. |
Vytvořit typ z příkladu úseku kódu |
Úsek kódu obsahující typ Java můžete vložit přímo do balíčku nebo zdrojové složky a vytvořit novou kompilační jednotku.
Například vyberte a zkopírujte tento zdrojový kódpackage pack; public class HelloWorld { public static void main(String[] args) { System.out.println("Ahoj světe"); } }a poté vyberte zdrojovou složku v Průzkumníku balíčků a použijte Ctrl+V (Upravit > Vložit). Tímto se automaticky vytvoří nový balíček 'pack' a soubor 'HelloWorld.java' se zkopírovaným obsahem. |
Generovat metody hashCode() a equals() |
Lze použít novou akci ke generování metod Chcete-li vyvolat tuto akci, vyberte typ a použijte Zdroj > Generovat metody hashCode() a equals()... |
Formátovač kódu pro příkazový řádek |
Nyní je možné zdrojový kód formátovat bez nutnosti spouštění modulu Eclipse UI za použití nové aplikace formátovače bez hlavičky. Formátovač pro příkazový řádek funguje jako standardní aplikace Eclipse. Následující příkaz naformátuje zdrojové soubory ve složce src za použití voleb zadaných v souboru config.prefs: Podrobnosti viz téma Použití aplikace formátovače. |
Podpora přípon podobných standardu Java |
Nová verze podporuje soubory s jinou příponou než .java obsahující čistý kód jazyka Java.
Pomocí stránky předvoleb
|