java动态编译maven包_eclipse开发Groovy代码,与java集成,maven打包编译

今天尝试了一下在eclipse里面写Groovy代码,并且做到和Java代码相互调用,折腾了一下把过程记录下来。

首先需要给eclipse安装一下Groovy的插件,插件地址:https://github.com/groovy/groovy-eclipse/wiki 。

安装完插件以后,就可以创建Groovy Project和Groovy Class等。

创建一个Maven工程,最简单的那种:maven-archetype-quickstart

maven工程的java代码一般是这么放的

src/main/java/com.xxx.xxx

而我们的groovy的代码可以这么放,并把这个目录设置为classpath

src/main/groovy/com.xxx.xxx

写一个hello world程序,由于创建的工程不是Groovy Project,所以这个文件eclipse是不认识的,会报错,不过只需要引入Groovy的相关jar就可以识别了

class AppGroovy {

static main(args) {

def closure = { param -> println "hello ${param}" }

closure("world")

}

}

pmo.xml里面加入Groovy的引用

org.codehaus.groovy

groovy-eclipse-compiler

2.9.2-01

maven-plugin

org.codehaus.groovy

groovy-eclipse-batch

2.4.3-01

再加入一个编译插件

maven-compiler-plugin

3.3

groovy-eclipse-compiler

true

org.codehaus.groovy

groovy-eclipse-compiler

2.7.0-01

这样,上面那个Groovy类就可以被编译和识别了,mvn package就可以编译

运行方法:右键Groovy文件,Run As -> Groovy Sctipt

如果要嵌入Java类中也很简单,直接在java里面引用就好了

public class App {

public static void main(String[] args) {

AppGroovy.main(args);

}

}

运行方法:右键Java文件,Run As -> Java Application

java通过maven打包解决xml读取格式失败问题

org.apache.maven.pluginsmaven-compi ...

Maven打包编译错误工作区间设置编码格式gbk可以utf-8不可以

转自:https://blog.csdn.net/wolf_love666/article/details/52593483 问题:Maven打包编译错误工作区间设置编码格式gbk可以utf-8不可以 ...

解决maven打包编译出现File encoding has not been set问题

maven打包编译时后台一直输出警告信息 [WARNING] File encoding has not been set, using platform encoding GBK, i.e. bui ...

eclipse使用profile完成不同环境的maven打包功能

原文:https://blog.csdn.net/duan9421/article/details/79086335 我们在日常开发工作中通常会根据不同的项目运行环境,添加不同的配置文件,例如 开发环 ...

记一次maven打包编译文件一直不正确

maven打包发现war包解压后的class文件总是跟原Java不一样 后来发现pom中这么写到 ma ...

IntelliJ IDEA开发Scala代码,与java集成,maven打包编译

今天尝试了一下在IntelliJ IDEA里面写Scala代码,并且做到和Java代码相互调用,折腾了一下把过程记录下来. 首先需要给IntelliJ IDEA安装一下Scala的插件,在IDEA的启 ...

Compile groovy mixed with java in Maven

Assuming that groovy codes are in src/main/groovy and java codes are in src/main/java. We can use 2 ...

Jenkins 集成Maven打包SpringBoot项目并自动部署到Tomcat服务器

提前条件: 1.在Jenkins服务器上安装Git.JDK和Maven 2.准备另一台服务器并安装Tomcat 3.Gitlab服务器 4.Gitlab仓库中上传SpringBoot项目代码 第一步, ...

【Java】maven打包源码、依赖插件

org.springframework.boot

随机推荐

[ASP.NET MVC 小牛之路]12 - Section、Partial View 和 Child Action

概括的讲,View中的内容可以分为静态和动态两部分.静态内容一般是html元素,而动态内容指的是在应用程序运行的时候动态创建的内容.给View添加动态内容的方式可归纳为下面几种: Inline cod ...

关于DataTable添加新列到指定列的方法

在开发新项目的时候发现了一个问题 dtResult.Columns.Add()方法只能将指定的列添加到DataTable的列的最后的位置,但是不能添加到指定的列上.举例来说,假设dtResult总共有 ...

Python快速建站系列-Part.Two-结构化和布局

|版权声明:本文为博主原创文章,未经博主允许不得转载. 首先明确我们要建一个什么样的站,作为教程(也算自己使用tornado的一个小总结),自然功能不能太多,但又满足一个普通网站需要的就行了. 目前想 ...

Android ListView用EditText实现搜索功能

前言 最近在开发一个IM项目的时候有一个需求就是,好友搜索功能.即在EditText中输入好友名字,ListView列表中动态展示刷选的好友列表.我把这个功能抽取出来了,先贴一下效果图: 分析 在查阅 ...

Shell第三篇:基本语法

一 什么是shell script 将OS命令堆积到可执行的文件里,由上至下的顺序执行文本里的OS命令 就是脚本了. 再加上些智能(条件/流控)控制,就变成了智能化脚本了. 二 变量 part1 为何 ...

Extjs6随笔(终篇)——内容总结

上个月和Extjs说byebye了,以后大概也没机会用了.之前的博客有点乱,大家看着比较麻烦,所以趁着我还没忘,在这里总结一下♪(^∇^*) 写了个demo,传到git上了,有需要可以自取.Extjs ...

Redis学习-常用命令

keys * 返回满足的所有键 exists key 是否存在指定的key,存在返回1,不存在返回0 expire key time 设置指定key的过期时间,可以使用ttl key查看剩余时间 pe ...

VmWare15 许可证

UG5J2-0ME12-M89WY-NPWXX-WQH88

Python函数的静态变量

C语言中,在函数内部可以定义static类型的变量,这个变量是属于这个函数的全局对象.在Python中也可以实现这样的机制. def f(): if not hasattr(f, 'x'): f.x ...

有符号无符号bit转换

int main(){ unsigned short i = 65434; short p = i; printf("%d", p); int sp; scanf_s(" ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值