Apache Groovy

Software screenshot:
Apache Groovy
Dettagli del software:
Versione: 2.4.5
Data di caricamento: 10 Dec 15
Licenza: Libero
Popolarità: 10

Rating: nan/5 (Total Votes: 0)

Molte delle sue caratteristiche si ispirano linguaggi come Python, Smalltalk e Ruby, rendendoli disponibili per gli sviluppatori che utilizzano una sintassi simile a Java.

Apache Groovy può essere utilizzato per lo sviluppo di applicazioni web, scrivendo script di shell, scrivendo casi conciso, significativo, di test utilizzando l'integrazione JUnit di Groovy, o per la prototipazione e la produzione di vere e proprie applicazioni industriali di resistenza.

Groovy funziona in modo pulito con tutti gli oggetti Java esistenti e librerie e compila direttamente al bytecode Java sia in sviluppo di applicazioni o la modalità di scripting

Caratteristiche .

  • si basa sui punti di forza di Java, ma ha caratteristiche di alimentazione aggiuntivi ispirati a linguaggi come Python, Ruby e Smalltalk
  • Aggiunge moderne funzioni di programmazione Java
  • Supporta linguaggi specifici del dominio
  • Aumenta la produttività degli sviluppatori
  • Semplifica test
  • compila direttamente bytecode Java

Cosa c'è di nuovo in questa versione:

  • Nuova funzione:
  • EstendereBuilder InitializerStrategy per supportare l'aggiunta l'annotazione a Costruttori
  • Miglioramenti:
  • Imposta ancore per ogni sezione in documenti Ascii Groovy.
  • errore di battitura Minore nella documentazione per DefaultGroovyMethods.xor (sinistra, destra)
  • completamento del codice Groovysh non è compatibile con JDK 9 (Jigsaw)
  • array primitivo Aggiunto join ()

Cosa c'è di nuovo nella versione 2.3.0:

  • Il sostegno pubblico per l'esecuzione di Groovy su JDK 8
  • Tratti
  • Nuovo e migliorato trasformazioni AST comeTailRecursive,Builder eSortable
  • Nuovo modulo NIO2 con il supporto di percorso
  • Lightening parsing JSON veloce e costruzione
  • Chiusura tipo di parametro inferenza
  • Un nuovo motore il codice del modello
  • Groovysh e GroovyConsole facilità d'uso miglioramenti
  • utilità di prova Nuovo GroovyAssert
  • capacità di classe PiùBaseScript

Cosa c'è di nuovo nella versione 2.2.2:.

  • Supporto int / int con tipo int obiettivo
  • Supporto int / int con qualsiasi tipo di obiettivo.
  • Supporto T / V con T, V è uno da (int, short, byte, char, lungo).
  • HannoDeletgate includono il numero di riga in stack.
  • Migliorare messaggio di errore nel caso in cui l'utente definisce un & quot; eseguire & quot; Metodo in uno script.

Cosa c'è di nuovo nella versione 2.1.7:

  • limitazione Documento di normale utilizzo costruttore mappa in stile quando utilizzandoImmutable
  • DOMCategory: text () non ottiene valore del nodo se si tratta di una sezione CDATA
  • operatore di overload con tipo di ritorno
  • Null arg chiamata non ambiguouseven anche se dovrebbe essere
  • GroovyDoc non sfugge parentesi angolari incode e tagliteral
  • JavaStubGenerator compensano inizializzatori di istanza
  • UsoCompileStatic sul codice che utilizza operatore diffusione su un insieme risultato in errore di compilazione
  • CompileStatic in classe utilizzando con (chiusura) porta ad errore di compilazione.

Cosa c'è di nuovo nella versione 2.1.5:

  • L'utilizzo di metodi di overload con vuoto / varags parametri fallisce se il tipo di controllo è attiva
  • groovyc Formica lancia un NoClassDefFoundError compilazione di una classe groovy conDelegatesTo eCompileStatic
  • META-INF / services / org.codehaus.groovy.runtime.ExtensionModule manca da groove-all.jar
  • CompileStatic compilazione non riesce a volte a costruire Gradle con messaggio di errore di riferimento per il metodo è ambiguo. Non è possibile scegliere tra
  • Ripristino di battitura flusso non corretto dopo se il lato

Cosa c'è di nuovo nella versione 2.1.4:

  • Supporto AST trasforma il campo generato dalField negli script
  • DelegatesTo dovrebbe essereDocumented

Cosa c'è di nuovo nella versione 2.0.6 / 2.1.0 RC 1:

  • DelegatesTo annotazione: per aiutare IDE e il tipo di controllo ed il compilatore statico di sapere che chiamate di metodo in chiusura parametro del metodo sono delegati a un altro parametro del metodo -. piacevole per DSL come nel Gradle costruire file
  • Estensioni di controllo di tipo personalizzato:. in modo da poter digitare controllare le DSL al momento della compilazione con la propria logica
  • Un sistema di meta-annotazione: che consente di definire una nuova annotazione in realtà la combinazione di più gli altri - il che significa anche essere in grado di applicare varie trasformazioni AST con una singola annotazione personalizzata .
  • Custom copione Base bandiera di classe per il compilatore groovyc:. per impostare una classe di sceneggiatura di base durante la compilazione degli script Groovy

  • script di configurazione
  • Compiler: per far definire varie opzioni di configurazione per il compilatore Groovy, come specificare le estensioni dei file personalizzati, diversi customizer compilazione di applicare, etc ..

Cosa c'è di nuovo nella versione 2.0.4:

  • Si risolve alcune questioni importanti che abbiamo avuto con farmaci generici con il generatore di stub, nonché diverse correzioni relative al controllo dei tipi statici e le caratteristiche di compilazione statici.

Cosa c'è di nuovo nella versione 2.0.0:

  • Un tipo pedina statica di lasciare che il compilatore dirvi circa la correttezza del codice.
  • compilazione statico per l'esecuzione delle parti critiche della vostra applicazione.
  • Modularità, dividendo il JAR Groovy in JAR orientate alle feature più piccoli e che ti permette di creare i propri moduli di estensione.
  • JDK 7 miglioramenti della sintassi progetto Coin, in modo che Groovy è ancora cordiale come possibile con il suo cugino Java.
  • JDK integrazione 7 Invoke dinamico di beneficiare del sostegno della JVM per linguaggi dinamici.

Cosa c'è di nuovo nella versione 1.8.6:

  • Groovy 1.8.6 è una versione di manutenzione essenzialmente, con alcuni piccoli miglioramenti e nuove funzionalità.

Cosa c'è di nuovo nella versione 1.8.1:

  • Bugs:
  • Bug in AntBuilder - DemuxOutputStream deve essere utilizzato
  • I modificatori di variabili locali vengono ignorate
  • comune compilazione non riesce se il metodo Groovy con parametro di matrice viene chiamato in stile vararg da Java
  • Groovy Icona Console per Mac OS X rotto
  • Solo l'eccezione di root in uno script è stampato
  • ToString non funziona per i tipi enum
  • Avere un setter con un valore di ritorno fa sì che il generatore stub per generare più setter e poi riuscire a compilare
  • generazione di stub non riesce con le firme generiche
  • java.lang.ClassFormatError: nome della classe Illegal & quot; Groovy / jmx / costruttore / package-info & quot; in file di classe Groovy / jmx / costruttore / package-info
  • varargs non vengono visualizzati da GroovyDoc
  • Java5 configureClassNode non si occupa di parametri annotazioni
  • ClassNode.equals getta ClassCastException per oggetto di altro tipo
  • Miglioramenti:
  • Tronca stringa quando durante la generazione MissingMethodException
  • operatore ternario: non gestisce nuova riga prima di & quot;:? & quot; garbo
  • Aggiungi opzioni di configurazione di connessione a URL.getText (), URL.newInputStream () e URL.newReader ()
  • Aggiungi repo Maven locale di default Uva config
  • Per supportare PreparedStatement.addBatch ()
  • Quando si lavora con ClassNodes, a volte bisogno di chiamare getFields () prima getField () funziona (init pigro)
  • Forza annotazioni sulle variabili da includere nel trasforma AST
  • groovyConsole dovrebbe sostenere più comuni tipi di file: .story, .gpp e .grunit
  • FaiThreadInterrupt opzionale in Groovy console
  • consenti classe di eccezione personalizzata per essere gettato inInterrupt trasformazioni AST
  • EqualsAndHashCode dovrebbe utilizzare GetX () al posto di x quando si accede proprietà
  • Abilita JsonBuilder a lavorare con gli oggetti in modo ricorsivo
  • Newify lavora per le classi predefinite, ma non per le classi definite nello stesso script
  • Crea ASTTransformationCustomizer parametri maniglia di annotazione
  • Una chiusura IDENTITA potrebbe essere reso disponibile
  • valorizzazione Minor per fornire no-arg versioni di DGM grep (), find () e findAll () metodi
  • 'include' attributo EqualsAndHashCode
  • completamenti migliore scheda per GroovyShell
  • findResults object / collezione / carta miglioramento patch (clonato da findResult)
  • Map.inject () non accetta la chiusura con 3 argomenti (collezionista, chiave, valore), solo 2 (collettori, Map.Entry)
  • JsonBuilder con supporto Writer sarebbe utile
  • Rinomina DGM collectAll a collectNested - mantenere originale come alias per il momento, al fine di ironico / rimuovere alla fine
  • Groovy dovrebbe fornire una scorciatoia per:. raccogliere {} appiattire ()
  • Nuove funzionalità:
  • Durante l'esecuzione di script da riga di comando dovrebbe essere possibile eseguire un BEGIN ed END un metodo (simile a AWK o Perl)
  • Aggiungere un metodo per prendere Collezioni, Iteratori, array
  • groupBy con una lista o un array di chiusure, come è il parametro per il raggruppamento nidificato

Cosa c'è di nuovo nella versione 1.8.0:

  • L'espressività dinamica di Groovy, in particolare per la definizione DSL .
  • prestazioni runtime.
  • l'esecuzione simultanea e parallela.
  • Design di contratto.
  • stile di programmazione funzionale.
  • supporto di prima classe JSON.
  • Compila-tempo di programmazione meta.
  • Più aiutanti e integrazioni biblioteca.

Cosa c'è di nuovo nella versione 1.8.0 RC 4:

  • carenze nel nuovo codice di ottimizzazione .
  • Un oscuro GEP-3 bug.

Cosa c'è di nuovo nella versione 1.7.10:

  • bug corretti:
  • StreamingMarkupBuilder può produrre XML non valido.
  • costruire Groovy fallisce nei test - prova RedundantCastInStubTest fallisce
  • .
  • Miglioramenti:
  • Aggiungi supporto per superiori pacchetto-, docu- o di classe-templates nelle classi Groovydoc discendenti.

Cosa c'è di nuovo nella versione 1.7.9:

  • Bug:
  • non GString costretto a stringa quando viene utilizzato in ctor Eccezione di sottoclasse
  • Groovysh 'richiamo storia' sembra raccogliere la voce errata (disattivata per 1)
  • ExpandoMetaClass.class.metaClass crea StackOverflow
  • LoadConfiguration non riesce a caricare * .jar
  • La gestione non corretta delle sequenze di escape Unicode per il calcolo percorsi di origine
  • Groovy risultati di compilazione in avvisi in codice generato
  • Eccezione java.lang.VerifyError & quot; In attesa di trovare l'oggetto / array sulla pila & quot; quando l'override un metodo notyped con un metodo digitato
  • generatore stub non sfugge stringhe con le virgolette singole e doppie misti
  • statiche classi interne non sono in fase di compilazione correttamente
  • Errore con il parametro null in dichiarazioni preparate con il vecchio driver DB2
  • nodi classe Script 'non hanno avuto posizioni di sorgente corretta
  • StreamingMarkupBuilder può produrre XML non valido
  • Miglioramento:
  • accessor proprietà leggere definito tramite metaclasse non funziona senza lista di parametri terminatore in chiusura
  • groovydocs GDK per String.padXXX non sono molto chiare [nuovo testo allegato]
  • Typo (liste - e # X3e, mappe) in GDK doc commento
  • Implementare un modo per metodo diretto chiamate
  • Nuova funzione:

  • comando
  • Uva non è possibile rimuovere e / o aggiornare a & quot; uva & quot;
  • Operazione:
  • Riscrivere GroovyScriptEngine

Cosa c'è di nuovo nella versione 1.8.0 RC 1:

  • Bug:
  • Groovysh 'richiamo storia' sembra raccogliere la voce errata (disattivata per 1)
  • LoadConfiguration non riesce a caricare * .jar
  • Eccezione java.lang.VerifyError & quot; In attesa di trovare l'oggetto / array sulla pila & quot; quando l'override un metodo notyped con un metodo digitato
  • Utilizzo di variabili di registro creato conLog o @ Log4j causa errore del compilatore se utilizzato nel metodo static
  • Console lanciato da groove-all-1.7.6.jar ha ora edera dipendenza
  • statiche classi interne non sono in fase di compilazione correttamente
  • & quot; anystring & quot; come byte [] getta java.lang.NumberFormatException: Per stringa di input: & quot; anystring & quot;
  • Miglioramento:
  • AggiungiThreadInterrupt per consolare script automaticamente
  • Preferisco ClassHelper.make (classe) su nuovo ClassNode (Class)
  • Nuova funzione:

  • comando
  • Uva non è possibile rimuovere e / o aggiornare a & quot; uva & quot;

Cosa c'è di nuovo nella versione 1.8.0 Beta 4:

  • in corso lavori di miglioramento delle prestazioni su calcoli interi primitivi .
  • Raggruppamento di GPars nelle biblioteche della distribuzione binaria.
  • Il supporto incorporato JSON con un slurper JSON e JSON un parser.

Cosa c'è di nuovo nella versione 1.8.0 Beta 3:

  • espressioni comando esteso può essere utilizzato sul lato destro delle assegnazioni.
  • La trasformazioneLog AST è personalizzabile per le proprie esigenze di registrazione.
  • Mappa ha ora un metodo isCase ().
  • Una scorciatoiaGrabResolver conGrabResolver (& quot; http: // alcuni / url & quot;)
  • .
  • String può essere costretto a enumerazioni (& quot; blu & quot; come colore)
  • .
  • Il supporto per Memoizzazione chiusura e trampolino.
  • ThreadInterrup,ConditionalInterupts eTimedInterrupt trasformazioni AST per fermare l'esecuzione di script integrati
  • min () / metodi su mappe (sui valori) max ().
  • Possibilità di memorizzare i metadati nodo nodi AST, da utilizzare nei trasformazioni AST.

Cosa c'è di nuovo nella versione 1.8.0 Beta 2:

  • dichiarazioni di tipo generico che perde in tutti i file in una generazione.

Cosa c'è di nuovo nella versione 1.7.5:

  • Bugs:
  • Parse di assert fallisce quando a capo tra 'test' e 'messaggio'
  • Primavera proxy / CGLIB gettano eccezione & quot; oggetto non è un'istanza di dichiarare classe & quot;
  • Necessità di fornire costruttore artigianale per avere enum & # X3e; 1 campo
  • Exponantiation
  • GroovyScriptEngine non può aggiornare classe da url diverso file
  • Aggiungi Test / copertura (per CLONE di comune compilazione fallisce nelle interfacce con i campi primitivi)
  • Compiler non disdegna più casi di default per un'istruzione switch
  • generatore Stub presenta un metodo di sintesi, nella stub non dovrebbe
  • 1.7.4 Groovy solito costruire da fonte
  • generato createCallSiteArray è troppo grande per JVM
  • metodo Curry non riesce quando viene utilizzato in una catena con IllegalArgumentException
  • DefaultGroovyMethods # unica O (n²) prestazioni
  • DGM # consumeProcessOutput (Process, StringBuffer, StringBuffer) accetta solo StringBuffers
  • classeImmutable, fallimento quando si cerca di definire membri statici privati ​​
  • DGM.eachLine () restituisce risultato sbagliato
  • errore di compilazione utilizzando l'ereditarietà e farmaci generici insieme
  • implicito questo non riesce a ottenere passato correttamente da una classe interna non statica ad un altro
  • Round-intervento XML che contiene un riferimento carattere di nuova riga del valore di un attributo rimuove il riferimento al carattere
  • Risposta già impegnati su Google App Engine quando serve blob
  • JavaStubGenerator non genera correttamente annotazioni con proprietà di tipo array
  • Ambito di variabile di BlockStatement perdersi dentro ReturnAdder
  • ResourceBundle in 1,7-beta-1
  • verità Groovy di groovy.util.slurpersupport.NoChildren deve essere false
  • ClassFormatError estendere interfaccia generica che ha un metodo con un argomento Array restituzione del tipo generico
  • errori FindBugs per new Integer () vs. Integer.valueOf () come le chiamate
  • unaryMinus non riesce per breve e Byte
  • L'accesso alle proprietà / metodi di classi interne risultati esteriori in NPE
  • riferimento non qualificato sottoclasse metodo statico a superclasse campi statici non riesce a compilare
  • Miglioramenti:
  • findResult e findAllResults oggetto / collezione / mappa zona di aumento
  • affermare una chiamata chiusura dovrebbe assomigliare
  • Migliorare le Prestazioni Categoria e memoria
  • Aggiungi supporto di più le estensioni dei file in compilatore
  • Nuove funzionalità:
  • Fornire un meccanismo per globali AST trasformazioni per essere in grado di definire una estensione del file per le fonti Groovy dovrebbero essere applicate a
  • fornire un'infrastruttura di test generatore stub
  • Aggiungi legature sintetiche a JList

Cosa c'è di nuovo nella versione 1.7.4:.

  • Le chiusure sono ora & quot; invocabile & quot;
  • Nuove trasformazioni AST.
  • Una sintassi aggiuntiva per le stringhe, con $ / ... / $, per aggirare vari fuga casi angolo, come ad esempio $ / a / b & # x5C; c $$ $ // $
  • metodi Nuova GDK come Map.countBy {}, {} Map.collectEntries, Date.putAt () (operatore pedice), Date.updated ().
  • I nuovi metodi String come tr (), stripMargin (), stripIndent (), (un) espandere (),
  • della Mappa withDefault {} metodo,
  • ncury di Chiusura () e rcury ()

Cosa c'è di nuovo nella versione 1.7.3:

  • Nuove trasformazioni AST, comeSynchronized (un uso più sicuro di sincronizzazione) eInheritConstructors (bello per ereditare i costruttori eccezione)
  • primo () / ultima () / Testa () / posteriore () metodi su array per coerenza con le liste (array primitivi non ancora coperti)
  • Alcuni miglioramenti di gestione BigDecimal per ottenere risultati migliori su alcuni calcoli casi limite
  • Un aggiornamento per le importazioni statiche per le proprietà
  • Nuovo metodo su Data in modo da poter fare cal [DAY_OF_WEEK] = LUNEDI
  • metodi di spedizione Nuovo String, come capitalizzare (), TR di UNIX (), espandere () / unexpand (), così come stripIndent () e stripMargin ()
  • L'icona di Groovy bello per il Groovy swing Console su Mac OS X

Altri software di sviluppo Apache Software Foundation

Apache BVal
Apache BVal

9 Apr 16

Apache Oozie
Apache Oozie

21 Jul 15

Apache Struts
Apache Struts

1 Oct 15

Apache SSHD
Apache SSHD

9 Apr 16

Commenti a Apache Groovy

I commenti non trovato
Aggiungi commento
Accendere le immagini!