文档章节

groovy和java结合使用

彭苏云
 彭苏云
发布于 2013/12/25 21:58
字数 258
阅读 1874
收藏 8

一直想知道java中怎么使用groovy,比如java类中如何调用groovy定义的类文件,调用是否需要依赖groovy的jar文件。中午在看groovy资料的时候做了一个尝试,发现还是挺简单的。

开发工具:groovy-grails-tool-suite(eclipse也可以了)

工程结构:

说明:GroovyFirst 是groovy工程,invokePro是普通的java工程,invokePro意图调用GroovyFirst中定义的groovy 类 CaculateSum.groovy。

上图中invokePro已经很清晰的表明了引用关系,GroovyFirst工程被打成jar包,invokePro添加了GroovyFirst.jar的依赖,为了在java工程中使用groovy,还需要添加groovy的依赖:groovy-2.2.1.jar,同时groovy-2.2.1.jar依赖了asm-4.1.jar。

至于Test类中怎么调用CaculateSum,看Test的代码:

package invokePro;

import com.test.CaculateSum;

public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		CaculateSum sum = new CaculateSum();
		int i = (Integer)sum.sum(1, 2);
		System.out.println(i);
	}
}
可以看出,Test中像使用普通的java类一样,使用CaculateSum。

这仅是一次探索,在java中如何使用groovy。

© 著作权归作者所有

共有 人打赏支持
彭苏云
粉丝 41
博文 204
码字总数 54255
作品 0
广州
高级程序员
加载中

评论(1)

554330833a
554330833a
能不能不打jar包呢?Java直接运行groovy呢
Groovy 2.5.0 发布,JVM 动态脚本语言

Apache Groovy 2.5.0 已发布。此版本包含大量修复和依赖更新,并包含以下新特性: [GROOVY-6744] - Have the elvis operator (?:) support the Optional type in Java 8 [GROOVY-7089] - Bas......

淡漠悠然
05/31
0
1
Apache Groovy 2.5.0-rc-2 发布,包含 16 处修复和改进

Apache Groovy 2.5.0-rc-2 已发布。此版本包含 16 处错误修复/改进: Bug [GROOVY-6523] - Improve Documentation for in DefaultGroovyMethods.intersect(..) [GROOVY-7202] - Unable to re......

局长
05/07
0
0
Spring对Groovy Bean的支持

Groovy是一个基于JVM的动态语言,对于一个Java开发者,它最让我喜欢的地方就是兼容Java的语法,学习使用成本低。从2.0版本开始,Spring就对Groovy这些动态语言提供了支持,结合Spring和Groov...

joshuazhan
2013/06/16
0
2
Xtend语言(1):独辟蹊径的JVM语言

我是2004年开始学习Java语言的,那时候的Java是1.4版本,说实在的,最新的Java10跟我一开始学习Java时候的语法变化并不大。我相信很多人都会跟我有相同的感受:Java写的越多就越觉得语法十分...

神思者l
06/05
0
0
Groovy轻松入门-通过与Java的比较,迅速掌握Groovy

Groovy和Java的相同点有: 3+, 4+, 6+, 8+, 10+, 12+, 13, 14, 15, 18+, 20+, 21, 22, 23, 28+, 29+, 30+, 31+, 32+ +表示Groovy不但涵盖了Java的语法,而且还有增强部分。 Groovy和Java的不...

Sub
2013/03/08
0
1

没有更多内容

加载失败,请刷新页面

加载更多

下一页

Memcached启动参数详解

memcached -d -m 1024 -l 192.168.100.101 -p 11211 -P /tmp/memcached.pid -c 1024 -f 1.25 -n 80 -t 16 运行参数描述 -d:以守护(daemon)进程方式启动; -u:是运行Memcache的用户,例如 ......

月下狼
26分钟前
0
0
xgboost-kaggle

https://www.kaggle.com/dansbecker/xgboost This tutorial is part of the Learn Machine Learning series. In this step, you will learn how to build and optimize models with the powe......

tantexian
27分钟前
0
0
nginx学习八 代理服务

最常用的语法 proxy_pass Syntax: proxy_pass URL;Default: --Context:location.if in location,limit_exception 反向代理 例:/etc/nginx/conf.d/default.conf 反向代理(代理服务端)......

Romanceling
34分钟前
0
0
npm ERR! Unexpected end of JSON ...

npm install 报错: npm ERR! Unexpected end of JSON input while parsing near '..."^2.8.14"},"_hasShrin' npm ERR! A complete log of this run can be found in: ... 打开终端 命令: 第......

大_侠
38分钟前
0
0
Android中的设计模式之责任链模式

参考 《设计模式:可复用面向对象软件的基础 》5.1 Chain of responsibility 职责链 对象行为型模式 《Android源码设计模式解析与实战》第9章 使编程更有灵活性--责任链模式 意图 使多个对象...

newtrek
41分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部