`
wjm251
  • 浏览: 110082 次
  • 性别: Icon_minigender_1
  • 来自: 沈阳
社区版块
存档分类
最新评论

jvm下的脚本们-beanshell,groovy,,,

    博客分类:
  • java
阅读更多
jvm下的脚本们
项目中用过python之后,开始接触jython,然后逐渐了解到好多类似的东西。

jython和jruby分别用python和ruby语言就不说了,

1.最让我惊讶的是groovy,后缀名虽然是groovy,却可以完全兼容java,并且在此基础上有些自己的语法,也可编译成class,
2.之前用过ant,好像jruby里头有个库可以代替ant写构建脚本,今天了解学习groovy的时候又发现个基于groovy的gant,可以以groovy的语法,使用ant的库,达到同样的效果,并且gant脚本和ant的xml build文件在接口上几乎一样。gant的官方甚至有个ant2gant的groovy脚本,用来将ant的构建脚本转话成gant文件。
可能有些问题,我试用发现ant本身支持用<ant>再调用另一个ant的构建脚本里的target,而以同样的规则转换成的gant却不能调用ant的xml build,但已经很满足了。不管是作为玩具还是将来在项目中使用都是不错的东西。
3.又肤浅得接触下beanshell,作为jedit的宏定义语言很nb,但beanshell的解释器本身只包含在一个jar里,是java类,因此叫嵌入式,其他比如groovy,jython都需要另外的解释器。
目前不支持@annotation,由于解释执行,调用定义在后面的类会有问题
似乎可以这样说:groovy在语言成面上和java靠得更近(beanshell次之),而beanshell在环境上靠的更近。(据说beanshell很慢,但不让他作主角,只做个通常的解析表达式之类的小配角就没关系了)

4.
scala,groovy的发明者曾说如果早发现scala他就不会再创造groovy了,而java他爹james gosling也说如果有一种语言能代替java,他认为是scala。不过据说scala就没有groovy或者beanshell这么容易上手,就没打算仔细看他,以后找个长点的时间过一下,不过也要先了解下有啥特色(函数式?haskell?)


其他的没接触过就不提了,据说jvm上有300多种????



下面是转载的

////////////////////////////////////////

如果坚持java的语法,beanshell是最好选择,实际上大部分.java文件可以不加任何改动就被beanshell执行;(--groovy似乎更好啊,)
如果需要更多的语法糖,groovy是更好的选择,更何况还有grails这个大有前途的框架;
如果你熟悉javascrip,rhino是不二选择,web的流行,使javascript成为最广泛使用的脚本语言,jdk6内置它是有道理的;
如果用过ror,ruby,python,那就可以选择jruby和jython,借助于jvm,jruby的执行速度甚至快过cruby,jython被官方支持的程度似乎不如jruby;
和groovy相比,scala是一个更学院派的东西;
我个人倾向于使用的是beanshell和grails/groovy
分享到:
评论
1 楼 wjm251 2010-08-21  
刚看到个新闻,出来个Clojure1.2,旁边有篇文章的链接,
“Clojure - Java平台的Erlang”

相关推荐

    nginx-upstream-jvm-route-1.15

    【标题】"nginx-upstream-jvm-route-1.15" 涉及的核心知识点是Nginx的upstream模块与JVM路由的整合,特别针对Nginx 1.15版本。这个项目旨在解决在配置Nginx时遇到的特定错误提示“nginx: [emerg] invalid parameter ...

    apache-groovy-sdk-4.0.1下载

    解释器允许你运行Groovy脚本,而编译器则可以将Groovy代码转换成Java字节码,使得Groovy程序能在Java虚拟机(JVM)上运行。这对于Java开发者来说是个巨大的优势,因为他们可以无缝地将Groovy集成到现有的Java项目中...

    apache-groovy-sdk-3.0.6.zip

    Groovy是一种基于Java平台的、动态的、强大的编程语言,它融合了面向对象编程、函数式编程和静态类型检查的能力,为开发者提供了简洁、高效的语法,使得编写Java虚拟机(JVM)上的应用程序变得更加容易和快捷。...

    JVM调优总结 Xms -Xmx -Xmn -Xss

    ### JVM调优总结:Xms、Xmx、Xmn、Xss 在Java虚拟机(JVM)的运行过程中,合理的参数配置对于提高程序性能至关重要。本文将对JVM调优中的几个关键参数进行深入解析,包括-Xms、-Xmx、-Xmn和-Xss等,帮助开发者更好...

    基于jvm-sandbox-repeater重新开发的一款流量回放平台产品

    Moonbox(月光宝盒)是JVM-Sandbox生态下的,基于jvm-sandbox-repeater重新开发的一款流量回放平台产品。在jvm-sandbox-repeater基础上提供了更加丰富功能,同时便于线上部署和使用,更多对比参考。 使用场景 你...

    JVM调优总结 -Xms -Xmx -Xmn -Xss

    JVM调优总结 -Xms -Xmx -Xmn -Xss JVM 调优是 Java virtual machine 的性能优化,通过调整 JVM 的参数来提高 Java 应用程序的性能。其中,-Xms、-Xmx、-Xmn、-Xss 是四个重要的参数,分别控制 JVM 的初始堆大小、...

    metrics-jvm-3.1.5-API文档-中文版.zip

    赠送jar包:metrics-jvm-3.1.5.jar; 赠送原API文档:metrics-jvm-3.1.5-javadoc.jar; 赠送源代码:metrics-jvm-3.1.5-sources.jar; 赠送Maven依赖信息文件:metrics-jvm-3.1.5.pom; 包含翻译后的API文档:...

    java jvm 参数 -Xms -Xmx -Xmn -Xss -

    默认情况下,JVM会从小到大动态地调整堆空间,但设置`-Xms`可以确保程序启动时就分配足够的内存,避免频繁的内存扩展操作,从而提高性能。例如,`-Xms256m`表示设置初始堆内存为256MB。 2. `-Xmx`: 这个参数用来...

    Android Studio 报错failed to create jvm error code -4的解决方法

    代码如下:failed to create jvm error code -4 这一般应是内存不够用所致,解决方法参考如下。 打开 Android Studio 安装目录下的bin目录,查找并打开文件 studio.exe.vmoptions,修改代码: 代码如下:-Xmx512m 为...

    JVM 动态执行Groovy脚本的方法

    本文将详细讲解如何使用JVM动态执行Groovy脚本的方法,主要包括利用JShell执行代码、调试模式下动态执行代码以及利用javax.script包执行Groovy脚本。以下是对各知识点的详细说明。 1. 利用JShell执行代码 Java 9 ...

    apache-groovy-sdk-2.4.4

    1. **Groovy 编译器**:这是将Groovy源代码转换为Java字节码的工具,使得Groovy程序能在Java虚拟机(JVM)上运行。Groovy编译器支持多种编译模式,包括即时编译(JIT)和全量编译(AOT),可以根据项目需求选择合适...

    SpringBoot-Gradle-Maven-Java-Groovy

    Groovy作为一门JVM语言,既可用于编写构建脚本,也可以与Java一起开发SpringBoot应用,提升开发效率。 在实际项目中,SpringBoot-Gradle-Maven-Java-Groovy的组合可能包括以下内容: - 使用SpringBoot构建微服务...

    jvm知识点整理-脑图

    jvm知识点整理-脑图

    metrics-jvm-3.1.5-API文档-中英对照版.zip

    赠送jar包:metrics-jvm-3.1.5.jar; 赠送原API文档:metrics-jvm-3.1.5-javadoc.jar; 赠送源代码:metrics-jvm-3.1.5-sources.jar; 赠送Maven依赖信息文件:metrics-jvm-3.1.5.pom; 包含翻译后的API文档:...

    jvm调优测试仓库-jvm-monitor.zip

    JVM调优是优化Java应用程序性能的关键环节,而"jvm-monitor"则提供了一种工具集来帮助开发者监控和分析JVM的状态。本文将深入探讨JVM调优的概念、方法以及如何利用"jvm-monitor"进行有效的监控。 一、JVM调优基础 ...

    jvm全面知识详解-全网最全(JVM面试题)

    jvm全面知识详解-全网最全(JVM面试题)

    apache-groovy-sdk-2.5.2.zip

    4. **脚本支持**:Groovy的一大优势是其强大的脚本能力,可以在不编写完整类结构的情况下快速实现功能。这对于自动化任务、测试脚本等场景非常实用。 5. ** Grape依赖管理**:Grape是Groovy的依赖管理系统,类似于...

    第3节: 揭秘JVM运行时数据区-02

    第3节: 揭秘JVM运行时数据区-02第3节: 揭秘JVM运行时数据区-02第3节: 揭秘JVM运行时数据区-02第3节: 揭秘JVM运行时数据区-02第3节: 揭秘JVM运行时数据区-02第3节: 揭秘JVM运行时数据区-02第3节: 揭秘JVM运行...

    jvm性能调优-jvm内存模型和优化-performance-jvm-memorymodel-optimize.zip

    《JVM性能调优:深入理解JVM内存模型与优化》 在Java开发中,JVM(Java Virtual Machine)性能调优是提升应用程序效率的关键环节。JVM内存模型的理解和优化,对于解决性能瓶颈、避免内存泄漏以及提高系统稳定性至关...

Global site tag (gtag.js) - Google Analytics