That are a good news. I like groovy for its agility and found on par with gant very good solution for crossplatform scripting
2010/1/18 Paul King <pa...@asert.com.au> > > Yes, startup speed can be a factor though I am not sure it is as bad > as 10 times slower these days. Some potentially useful info for you: > > * if you grab 1.7.1 snapshot or 1.8 snapshot from one of the CI servers > then it avoids one of the big startup delays due to DGM > class loading by loading that info in one go as serialised data. > > * targeted for 1.8 but not yet finished is some lazy loading logic > which should speed that up even further > > * also targeted for 1.8 is a modularisation of the libraries so you > could package up a streamlined Groovy system that would load quicker > if you didn't need all of the library functionality > > * there is a still experimental static groovy project which performs > on par with Java which might allow you to gain some further speed. > > So, while Groovy isn't the only game in town these days in terms of > innovative languages on the JVM, it should only improve in the areas > that are of concern to you. > > > Cheers, Paul. > > Alexey Lunacharsky wrote: > >> Thanks you a lot. >> >> I've heard about grape. But didn't know it is almost what I need. >> It is very good point to start... But >> The biggest problem with groovy it is very slow at startup. >> The pure java solution such Ivy or thin wrapped with ant scripting can be >> about 10 times faster for >> using from command shell. >> >> 2010/1/18 Paul King <pa...@asert.com.au> >> >> Paul King wrote: >>> >>> Not 100% the same as what you suggest but Groovy's Grape system does >>>> some >>>> of what you are asking for. Normally Grapes are used from within >>>> scripts, >>>> e.g.: >>>> >>>> @Grab('org.apache.ant:ant:1.7.1') >>>> import org.apache.tools.ant.Main >>>> Main.main(['-version'] as String[]) >>>> >>>> but it also has a commandline interface. Excerpt from doco shown below: >>>> >>>> <doco> >>>> Command Line Tools >>>> >>>> grape install <groupId> <artifactId> [<version>] >>>> >>>> This installs the specified groovy module or maven artifact. If a >>>> version >>>> is specified that specific version will be installed, otherwise the most >>>> recent version will be used (as if '*' we passed in). >>>> >>>> Even though the doco says maven artifact, it is Ivy under the covers >>> so it is strictly speaking an Ivy artifact which can be and often is >>> a maven artifact. >>> >>> Paul. >>> >>> >>> grape list >>> >>>> Lists locally installed modules (with their full maven name in the case >>>> of >>>> groovy modules) and versions. >>>> >>>> grape resolve (<groupId> <artifactId> <version>)+ >>>> >>>> This returns the file locations of the jars representing the artifcats >>>> for >>>> the specified module(s) and the respective transitive dependencies. >>>> </doco> >>>> >>>> This may not be what you want but might be a useful starting point. >>>> >>>> >>>> Cheers, Paul. >>>> >>>> >>>> >>>> Alexey Lunacharsky wrote: >>>> >>>> Hello! >>>>> >>>>> Does anybody think about imlementation a "Debian APT"-like tool on the >>>>> top >>>>> of an Ivy dependency manager. It can manage all java binaries and >>>>> source >>>>> installation in the system on user level, >>>>> through home directory located workspace, or on admin level through FHS >>>>> on >>>>> Unix systems. >>>>> >>>>> For the give what I mean I write some high level usage examples, which >>>>> can >>>>> be used in unit tests): >>>>> >>>>> $ jpt install apache-ant-1.7.0 >>>>> >>>>> by this command ant and all of its dependencies (jars and maybe other >>>>> resources such jpt run configurations) are get downloaded and become >>>>> available in ivy cache and it can be run by: >>>>> >>>>> $ jpt run apache-ant >>>>> >>>>> This execution will find and organize classpath through ivy depencies >>>>> review, and than >>>>> run spesified class (which is specified through jpt run configuation >>>>> XML >>>>> file) >>>>> >>>>> $ jpt wrap apache-ant ant >>>>> >>>>> Creates system dependent warapper script for running application >>>>> through >>>>> 'jpt run'. >>>>> >>>>> $ ant >>>>> >>>>> will now execute $ jpt run apache-ant >>>>> >>>>> $ jpt unwrap ant >>>>> >>>>> now wrapper no more exist >>>>> >>>>> $ ant >>>>> >>>>> no such command >>>>> >>>>> $ jpt uninstall apache-ant-1.7.0 >>>>> >>>>> deletes a softfare binaries if there is no dependencies remain >>>>> >>>>> And so on. >>>>> >>>>> In future it can manage also the libraries source code. And be used for >>>>> development environment buildings based on ant or gant scripts. >>>>> So many software can be integrated on the top of spring framework etc. >>>>> >>>>> This is the system of my dream! >>>>> >>>>> So I will be very glad if you tell me, if such the system have already >>>>> exist >>>>> or >>>>> why to not imlement such as a thin wrapper across the Ivy? >>>>> >>>>> >>>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org >>>> For additional commands, e-mail: dev-h...@ant.apache.org >>>> >>>> >>>> >>>> --------------------------------------------------------------------- >>> To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org >>> For additional commands, e-mail: dev-h...@ant.apache.org >>> >>> >>> >> >> > > --------------------------------------------------------------------- > To unsubscribe, e-mail: dev-unsubscr...@ant.apache.org > For additional commands, e-mail: dev-h...@ant.apache.org > > -- Best regards, Alexey Lunacharsky (http://alun.katlex.com/en)