随笔 - 396  文章 - 3  评论 - 16  阅读 - 32万

groovy与javah互相调用

暂时只找到这几种方法。groovy代码方便灵活。常用来写一些工具。一般都是java加入groovy代码

 

第一种 java中加入 groovy代码就是

Toy.groovy

1
2
3
4
5
6
7
8
9
10
11
class Toy{
 
  def p(arg) {
         
       arg.each{
      
        println it
 
       }   
  
}   

  

 

1
2
3
4
5
6
7
8
9
10
11
12
13
GroovyClassLoader gcl = new GroovyClassLoader();
    Class greetingClass = null;
try {
 
  greetingClass = gcl.parseClass(new File("Toy.groovy"));
} catch (IOException e) {
    e.printStackTrace();
}
 
GroovyObject hello = (GroovyObject) new Toy();
String[] a={"a","b","c"};
Object[] agr={a};
hello.invokeMethod("p",agr) ;

  

另一种就是将groovy的代码打包成jar ,和java打包类似 ,就可以当成java代码那样打包,然后加到java 项目的classpath中这样执行

1
2
3
4
5
6
GroovyObject hello  = (GroovyObject) new Toy();
 
 
String[] a={"a","b","c"};
Object[] agr={a};
hello.invokeMethod("p",agr) ;

  

 

groovy中引入java代码同上类似。就是将java代码打包后加入到 java 项目的classpath中 

 

例如 app2是一个javal类

1
2
3
4
5
public class App2 {
    public void p1() {
        System.out.println("hello world");
    }
}

  在groovy中引入

1
2
def te = new App2()
te.p1()

  注意使用groovy时把groovy的jar包引入java项目中

 

 

posted on   c3tc3tc3t  阅读(469)  评论(0编辑  收藏  举报
编辑推荐:
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· .NET Core内存结构体系(Windows环境)底层原理浅谈
· C# 深度学习:对抗生成网络(GAN)训练头像生成模型
· .NET 适配 HarmonyOS 进展
阅读排行:
· 手把手教你更优雅的享受 DeepSeek
· 腾讯元宝接入 DeepSeek R1 模型,支持深度思考 + 联网搜索,好用不卡机!
· AI工具推荐:领先的开源 AI 代码助手——Continue
· 探秘Transformer系列之(2)---总体架构
· V-Control:一个基于 .NET MAUI 的开箱即用的UI组件库
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示