微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Groovy和Java互调

Scala和Java为静态语言,Groovy为动态语言

Scala: 函数式编程,同时支持面向对象

Groovy: jvm上的脚本,较好兼容java语法,Groovy加强了Java集成。

 

可配置化的优势,可以将一些简单的逻辑公开给外部编辑和使用,增强了互操作性,复杂逻辑来说,可配置化代码的调试则会比较麻烦

 

Scala和Java互相调用 

 

Scala调用java

定义java类,直接调用方法,或者直接import,再调用即可。

 

Java调用Scala

静态方法直接传递参数调用即可,非静态方法,new对象再调用方法

 

 

Groovy和Java互相调用

Groovy调用Java

groovy 调用 Java class ,只需要在类前导入该 Java 类,在 Groovy 代码中就可以无缝使用该 Java 类,可方便接入java sdk

 

Import Java library groovy

this.class.classLoader.rootLoader.addURL(new URL("file:///${currentDir}/lib/commons-net-3.3.jar")

 

User gradle

jar.archiveName 'warO.jar'

jar.manifest {

    attributes 'Main-Class' : 'net.codetojoy.waro.Main'

    attributes 'Class-Path' : 'jars/groovy-all-1.6.4.jar jars/guava-collections-r03.jar jars/guava-base-r03.jar'

}

 

#!/usr/bin/env groovy -cp ojdbc5.jar

 

Java 调用 Groovy

通过JAVA来加载如一个groovy脚本文件,然后调用该脚本中的方法

GroovyClassLoader invokeMethod

loader.parseClass(new File)

或者

通过设定CLAsspATH来初始化groovy脚本引擎,可以运行该path下的任何groovy脚本文件

 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐