Mnoho z jeho funkcí jsou inspirovány jazyky jako Python, Ruby a Smalltalk, což je k dispozici pro vývojáře, kteří používají Java-jako syntax.
Groovy mohou být použity pro vývoj webových aplikací, psaní skripty, psaní stručné, smysluplné, testovací případy pomocí integrace JUnit Groovy je, nebo prototypů a výrobu skutečné průmyslové pevnosti aplikací.
Groovy pracuje čistě s všech existujících objektů jazyka Java a knihoven a zpracovává přímo do Java bytecode buď vývoj aplikací nebo v režimu skriptovacím
Co je nového v této verzi:.
< p>- Nová vlastnost:
- RozšířitBuilder InitializerStrategy podpořit přidáním anotaci k konstruktérů
- Zlepšení:
- Nastavení kotvy pro každou sekci v Groovy Ascii docs.
- Minor překlep v dokumentaci pro DefaultGroovyMethods.xor (vlevo, vpravo)
- Groovysh dokončení kód není kompatibilní s JDK 9 (Jigsaw)
- Přidána primitivní array join ()
Co je nového ve verzi 2.4.1:
- Nová vlastnost:
- RozšířitBuilder InitializerStrategy podpořit přidáním anotaci k konstruktérů
- Zlepšení:
- Nastavení kotvy pro každou sekci v Groovy Ascii docs.
- Minor překlep v dokumentaci pro DefaultGroovyMethods.xor (vlevo, vpravo)
- Groovysh dokončení kód není kompatibilní s JDK 9 (Jigsaw)
- Přidána primitivní array join ()
Co je nového ve verzi 2.3.0:
- Oficiální podpora pro běh Groovy na sady JDK 8
- Vlastnosti
- Nové a vylepšené AST transformace jakoTailRecursive,Builder aSortable
- Nový NIO2 modul s podporou cesta li>
- Lightening rychlé JSON parsování a stavební
- Uzávěr typ parametru odvození
- Nový značkovací šablony motor
- Groovysh a GroovyConsole snadnost použití vylepšení
- New GroovyAssert Test nástroj
- VíceBaseScript třída schopnosti
Co je nového ve verzi 2.2.2:.
- Podpora int / int s typem int brankové
- Podpora int / int s jakýmkoliv typem gól.
- Podpora T / V s T, V jako jeden z (int, krátký, byte, char, dlouhý).
- HaveDeletgate obsahovat číslo řádku v trasování zásobníku.
- Zlepšit chybové hlášení v případě, že uživatel definuje & quot; spustit & quot; metoda ve skriptu.
Co je nového ve verzi 2.1.7:
- omezení Dokument normální mapa stylu konstruktoru použít, když použitíImmutable
- DOMCategory: text () nedostane hodnotu uzlu, pokud je část CDATA
- Přetížený operátor s návratový typ
- Null arg volání není ambiguouseven i když to by mělo být
- GroovyDoc neunikalo lomené závorky vcode aliteral tagy
- JavaStubGenerator vymaže inicializátory instance
- PoužíváníCompileStatic na kód, který používá operátor rozšířil na sadu výsledků omylem kompilace
- CompileStatic na třídě použití s (uzavření) vede k chybě kompilace.
Co je nového ve verzi 2.1.5:
- Používání metod přetížené s prázdnými / varags parametry selhává pokud kontrola typu je aktivní
- Ant groovyc hází NoClassDefFoundError Kompilace groovy tříduDelegatesTo aCompileStatic
- META-INF / services / org.codehaus.groovy.runtime.ExtensionModule chybí z groovy-all.jar
- CompileStatic kompilace selže někdy gradle sestavení se zobrazí chybová zpráva odkaz na metody je nejednoznačný. Nelze volit mezi
- Nesprávný průtok resetovat psaní po pokud větev
Co je nového ve verzi 2.1.4:
- Podpora AST transformuje na pole vytvářenéhoField ve skriptech
- DelegatesTo by měla býtDocumented
Co je nového ve verzi 2.0.6 / 2.1.0 RC 1:
- DelegatesTo Anotace: pomoci IDE a statického typu kontrolu a překladač vědět, že volání metody v uzávěru metoda parametrů jsou delegovány na jiný parametr metody. - příjemné pro DSLs jako v Gradle stavět souboru
- typ Custom rozšíření kontrolní:., Takže můžete zadat zkontrolovat DSLs na kompilaci-čas s vaší vlastní logikou
- meta-anotace systém:, který vám umožní definovat nové anotace vlastně kombinuje několik dalších - což také znamená být schopen aplikovat několik AST transformací s jedinou vlastní anotaci .
- Custom základna skript třída příznak pro groovyc kompilátor:. Nastavit třídu základna skriptu při kompilaci Groovy skripty
- Compiler scénář: nechat definovat různé možnosti konfigurace pro Groovy překladač, stejně jako zadání přípony souborů zvyk, různé kompilace Customizers platit, atd ..
Konfigurace
Co je nového ve verzi 2.0.4:
- Je to opravuje některé důležité otázky jsme měli s generika s pahýl generátorem, stejně jako několik opravy týkající se kontroly statického typu a statických vlastností kompilace.
Co je nového ve verzi 2.0.0:
- statického typu Kontrola nechat kompilátor vám říct, o správnosti kódu.
- Statická kompilace pro plnění kritických částí vaší aplikace.
- Modularita, rozdělení Groovy JAR do menších funkcí orientované JAR a nechat si vytvořit své vlastní rozšiřujících modulů.
- JDK 7 Project mincí vylepšení syntaxe, takže Groovy je stále co nejšetrnější s jeho bratrancem Java.
- JDK 7 Vyvolat Dynamic integrace těžit z podpory JVM pro dynamické jazyky.
Co je nového ve verzi 1.8.6:
- Groovy 1.8.6 je vydání údržby v podstatě, s několika drobnými vylepšení a nových funkcí.
Co je nového ve verzi 1.8.1:
- Chyby:
- Bug v AntBuilder - DemuxOutputStream by měl být používán
- Modifikátory na lokální proměnné jsou ignorovány
- Společné kompilace selže, pokud je volána metoda Groovy s parametrem pole v VARARG stylu z Javy
- Groovy Console Ikona pro Mac OS X zlomený
- Pouze kořenové výjimka ve skriptu je vytištěn
- ToString nefunguje pro typy výčtu
- Mít setra s návratovou hodnotu způsobí, že pahýl generátor generovat více setters a pak se nepodaří sestavit
- generace Stub selže s generických podpisy
- java.lang.ClassFormatError: Nelegální název & Quot třídy, groovy / JMX / stavitel / balík-info & quot; V souboru třídy groovy / JMX / stavitel / Balíček-info
- Varargs nejsou zobrazeny GroovyDoc
- Java5 configureClassNode nemusí starat o parametru anotací
- ClassNode.equals hází ClassCastException objekt jiného typu
- Zlepšení:
- Zkrátit řetězec, když při generování MissingMethodException
- Ternární operátor: nezpracovává nový řádek před & quot;:? & Quot; půvabně
- Přidat možností konfigurace připojení k URL.getText (), URL.newInputStream () a URL.newReader ()
- Přidat lokální Maven repo výchozí hroznů config
- Chcete-li podpořit PreparedStatement.addBatch ()
- Při práci s ClassNodes, někdy je třeba zavolat getFields () před getField () budou fungovat (líný init)
- Force anotace na proměnných, které mají být zahrnuty do AST transformace
- groovyConsole by měl podporovat více běžných typů souborů: .story, .gpp a .grunit
- Zkontrolujte,ThreadInterrupt volitelný v Groovy konzole
- Povolit vlastní výjimka třída být hozen doInterrupt AST transformacích
- EqualsAndHashCode by měly používat getX () namísto x při přístupu k vlastnostem
- Povolit JsonBuilder pracovat s objekty rekurzivně
- Newify pracuje pro předem definovaných tříd, ale ne pro tříd definovaných v stejném skriptu
- ASTTransformationCustomizer parametry rukojeť anotace
- uzavření totožnosti mohlo být k dispozici
- Minor vylepšení poskytovat žádné-Arg verze DGM grep (), najít () a findall () metody
- "zahrnuje" atribut v EqualsAndHashCode
- Lepší karta dokončení pro GroovyShell
- findResults objekt / Kolekce / mapa vylepšení náplast (CLONED z findResult)
- Map.inject () nepřijímá uzávěr se 3 argumenty (kolektor, klíč, hodnota), pouze 2 (kolektorů, Map.Entry)
- JsonBuilder s podporou Writer bude hodit
- Přejmenovat DGM collectAll na collectNested - zachovat původní jako alias pro současné době s cílem kritizovat / vyjmutí nakonec
- Groovy by měly poskytnout zkratka pro:. Sbírat {} vyrovnat ()
- Nové vlastnosti:
- Při spuštění příkazového řádku skripty by mělo být možné spustit BEGIN a END metodou (blízký AWK nebo Perl)
- Přidat metodu vzít do sbírek, Iterátory, pole
- groupBy se seznamem nebo pole uzávěrů, jak je to parametr pro vnořené skupiny
Co je nového ve verzi 1.8.0:
- Dynamický expresivita Groovy, konkrétně pro definování DSLs .
- Runtime představení.
- Souběžné a paralelní spouštění.
- Design by smlouva.
- Funkční styl programování.
- První třída podporu JSON.
- kompilace-time meta programování.
- Další pomocníci a knihovní dodatky.
Co je nového ve verzi 1.8.0 RC 4:
- Krátké-příchody v novém optimalizace kódu .
- temný GEP-3 chyba.
Co je nového ve verzi 1.7.10:
- opravených chyb:
- StreamingMarkupBuilder mohou produkovat neplatný XML.
- Groovy build selže při zkouškách - Zkouška RedundantCastInStubTest selže .
- Zlepšení:
- Přidat podporu pro naléhavými package-, doc- nebo třídy-šablony v Groovydoc potomka třídách.
Co je nového ve verzi 1.7.9:
- Bug:
- GString nejsou nuceni k String pokud je použit v výjimku dílčí třídy ctor
- Groovysh "Historie recall" Zdá se, že vybírání špatný vstup (vypnuto 1)
- ExpandoMetaClass.class.metaClass vytváří StackOverflow
- LoadConfiguration nezdaří načtení * .jar
- Nesprávné zacházení sekvencí Unicode escape při výpočtu zdrojové umístění
- Groovy výsledky kompilace ve varováních v generovaného kódu
- Výjimka java.lang.VerifyError & quot; očekávali, že najdete objekt / pole na zásobníku & quot; Při potlačování notyped metodu s napsaný způsobem
- Stub generátor neunikalo řetězce se smíšenými jednolůžkových a dvoulůžkových uvozovek
- Statické vnitřní třídy nejsou správně sestaven
- Chyba s nulovým parametrem v připravených příkazů se starým ovladačem DB2
- class uzly Skripty "neměl správný zdroj pozice
- StreamingMarkupBuilder mohou produkovat neplatný XML
- Využití:
- Reality přečíst přístupový definovány pomocí Metaclass nefunguje, aniž by seznam parametrů terminátoru v uzávěru
- GDK groovydocs pro String.padXXX nejsou příliš jasné [nové znění připojena]
- Typo (seznamy - & # x3e, mapy) v GDK DOC Komentář
- Zavést cestu pro přímé volání metody
- Nová funkce:
- Grape nelze odstranit a / nebo aktualizovat & quot; hrozen & quot;
- Úkol:
- Přepište GroovyScriptEngine
Příkaz
Co je nového ve verzi 1.8.0 RC 1:
- Bug:
- Groovysh "Historie recall" Zdá se, že vybírání špatný vstup (vypnuto 1)
- LoadConfiguration nezdaří načtení * .jar
- Výjimka java.lang.VerifyError & quot; očekávali, že najdete objekt / pole na zásobníku & quot; Při potlačování notyped metodu s napsaný způsobem
- Používání log proměnná vytvořeny sLog nebo @ Log4j způsobí chybu kompilátoru, pokud jsou použity v statické metody
- Console se spouští z groovy-all-1.7.6.jar má nyní Ivy závislost
- Statické vnitřní třídy nejsou správně sestaven
- & quot; anystring & quot; jako byte [] hodí java.lang.NumberFormatException: Pro vstupní řetězec: & quot; anystring & quot;
- Využití:
- PřidatThreadInterrupt automaticky konzole skripty
- Preferuji ClassHelper.make (třída) přes nové ClassNode (Class)
- Nová funkce:
- Grape nelze odstranit a / nebo aktualizovat & quot; hrozen & quot;
Příkaz
Co je nového ve verzi 1.8.0 beta 4:
- Probíhající Zlepšení výkonu práce na primitivní integer výpočtů .
- Sdružování z GPars v knihovnách binární distribuce.
- Vestavěná podpora JSON s JSON slurper a JSON parser.
Co je nového ve verzi 1.8.0 Beta 3:
- Rozšířené příkaz výrazy mohou být použity na pravá strana úkolů.
- TransformaceLog AST je možné přizpůsobit pro své vlastní potřeby protokolování.
- Mapa má nyní metodu isCase ().
- GrabResolver zkratka sGrabResolver (& quot; http: // někteří / url & quot;) .
- String může být nucen k enums (& quot; modré & quot; jako Color) .
- Podpora pro uzavření memoization a trampolínou.
- ThreadInterrup,ConditionalInterupts aTimedInterrupt AST transformace pro zastavení provádění vložených skriptů
- min () / max () metody na mapě (na hodnoty).
- Možnost uložení metadat uzlu v AST uzlech, pro použití ve vašich AST transformací.
Co je nového ve verzi 1.8.0 Beta 2:
- prohlášení obecný typ netěsné napříč všemi soubory ve build.
Co je nového ve verzi 1.7.5:
- Chyby:
- Parse z ASSERT selže, když nový řádek mezi 'test "a" zpráva "
- Jarní / CGLIB proxy házet výjimku & quot; objekt není instancí třídy prohlašuje & quot;
- Potřebujete dodat ručně řemeslně konstruktor pro ENUM s & # X3e, 1 pole
- Exponantiation
- GroovyScriptEngine nelze obnovit třídy z url jiného než souboru
- Přidat test / pokrytí (pro klon společné kompilace selže pro rozhraní s primitivní polí)
- Compiler nevadí více výchozích pouzdra pro switch
- Stub generátor vykazuje syntetickou metodu v pahýly to neměl
- Groovy 1.7.4 zvyklý stavět ze zdroje
- Vygenerovaný createCallSiteArray je příliš velká pro JVM
- metoda Curry selže při použití v řetězci s IllegalArgumentException
- DefaultGroovyMethods # Unikátní O (n?) Výkon
- DGM # consumeProcessOutput (Process, StringBuffer, StringBuffer) akceptuje pouze StringBuffers
- Immutable třída, selhání, když se snaží definovat soukromé statické členy
- DGM.eachLine () vrací nesprávný výsledek
- chybu kompilace při používání dědičnosti a generik spolu
- Implicitní se to nezdaří, aby se prošel správně z jednoho non-statické vnitřní třídy na jinou
- Round-vypínání XML, který obsahuje nový řádek odkaz znaků v hodnotě atributu odstraní odkaz znak
- Reakce již spáchán na Google App Engine, pokud slouží kuličky
- JavaStubGenerator není správně generovat anotace s vlastnostmi typu pole
- Variabilní rozsah BlockStatement ztratí uvnitř ReturnAdder
- ResourceBundle v 1,7-beta-1,
- Groovy pravda groovy.util.slurpersupport.NoChildren by mělo být falešný
- ClassFormatError rozšíření generické rozhraní, které má metodu s řadou argumentem vrací na obecný typ
- FindBugs chyby pro nový Integer () vs. Integer.valueOf (), jako je volání
- unaryMinus selže pro krátké a Byte
- Přístup k vnější vlastnosti / metody z vnitřní třídy výsledků v NPE
- Výrok Odkaz v podtřídy statické metody na rodičovské třídy statická pole nepodaří sestavit
- Zlepšení:
- findResult a findAllResults objektů / Kolekce / mapa náplast vylepšení
- Vyhodnocení uzavírací hovoru by měla vypadat
- Zlepšit Kategorie výkon a paměť
- Přidat více přípon souborů, podporu v kompilátoru
- Nové vlastnosti:
- Poskytovat mechanismus pro Global AST transformace, aby bylo možné definovat příponu souboru pro Groovy zdroje by měly být použity na
- Poskytovat testovací útržek generátor infrastruktury
- Přidat syntetické vazby do JList
Co je nového ve verzi 1.7.4:.
- Uzávěry jsou nyní & quot; callable & quot;
- Nové AST transformace.
- další syntaxe pro smyčce, s $ / ... / $, obejít různé úniku rohové případy, jako je například $ / a / b & # x5c; c $$ $ $ //
- New GDK metody jako Map.countBy {}, Map.collectEntries {}, Date.putAt () (operátor index), Date.updated ().
- Tato nová řada metod, jako je tr (), stripMargin (), stripIndent (), (un) Rozbalit (),
- metoda Map withDefault {}
- uzávěru ncury () a rcury ()
Co je nového ve verzi 1.7.3:
- Nové AST transformace, stejně jakoSynchronized (bezpečnější použití synchronizace) aInheritConstructors (pěkné pro dědění výjimek konstruktérů)
- První () / poslední () / head () / ocas () metody na polích pro soulad s seznamů (primitivní pole dosud zahrnuty)
- Některé vylepšení BigDecimal pro manipulaci s lepšími výsledky na některé okrajové případech výpočtech
- Aktualizace statických dovozu pro vlastnosti
- Nová metoda na datum, takže si můžete udělat CAL [DAY_OF_WEEK] = pondělí
- new String metody manipulace, stejně jako těžit (), UNIX tr (), rozbalte () / unexpand (), stejně jako stripIndent () a stripMargin ()
- pěkné Groovy ikona pro Groovy Swing Console na Mac OS X
Komentáře nebyl nalezen