本月博客排行
-
第1名
龙儿筝 -
第2名
lerf -
第3名
fantaxy025025 - johnsmith9th
- xiangjie88
- zysnba
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - wy_19921005
- vipbooks
- benladeng5225
- e_e
- wallimn
- javashop
- ranbuijj
- fantaxy025025
- jickcai
- gengyun12
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- arpenker
- tanling8334
- gaojingsong
- kaizi1992
- xpenxpen
- 龙儿筝
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- xiangjie88
- wangchen.ily
- Jameslyy
- luxurioust
- lemonhandsome
- mengjichen
- jbosscn
- zxq_2017
- lzyfn123
- nychen2000
- forestqqqq
- wjianwei666
- ajinn
- zhanjia
- siemens800
- Xeden
- hanbaohong
- java-007
- 喧嚣求静
- mwhgJava
最新文章列表
[2/3]gradle脚本运行环境分析(gradle的语义模型)
转自:http://www.cnblogs.com/chenjie0949/p/4757702.html
引言:通过上一篇的论述,我们知道gradle脚本是如假包换的groovy代码,但是这个groovy代码是运行在他的上下文环境里面的,学名叫语义模型。这一篇我们就来看看他的语义模型到底是什么,如何使用。
gradle下载安装
gradle的下载安装并没有什么出乎意料的东西,进入他的官网(htt ...
Groovy 是 用于Java虚拟机
Groovy 是 用于Java虚拟机的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时又具有闭包和动态语言中的其他特性。
Groovy是JVM的一个替代语言(替代是指可以用 Groovy 在Java平台上进行 Java 编程),使用方式基本与使用 Java代码的方式相同,该语言特别适合与Spring的动态语言 ...
Gradle项目构建工具
Gradle是一款非常简洁的项目构建工具,相比ant和maven的繁琐的xml配置,gradle提供了非常简洁的命令,而这正得益于它的底层语言Groovy,目前在Android的项目的中,几乎都是使用的gradle来管理项目,当然了除了这些它也对Java,JVM平台系语言,Scala等也良好支持,同时支持C/C++ ,并可以与Maven仓库无缝集成 !
目前最新Gradle版本:2.9
官网 ...
Gradle入门安装
Gradle是一款非常简洁的项目构建工具,相比ant和maven的繁琐的xml配置,gradle提供了非常简洁的命令,而这正得益于它的底层语言Groovy,目前在Android的项目的中,几乎都是使用的gradle来管理项目,当然了除了这些它也对Java,JVM平台系语言,Scala等也良好支持,同时支持C/C++ ,并可以与Maven仓库无缝集成 !
目前最新Gradle版本:2.9
官网下 ...
Groovy-Java性能对比
摘要:Groovy用@CompileStatic性能和Java一样,Script比Java慢一个数量级。 在业务方法占主要消耗时间的情况下,均无区别。
先说结论,如上面摘要所述,用Groovy的语法糖的同时如果苛求性能,就加@CompileStatic编译注解。
下面是用punit做的2次并发性能测试结果,第一次是执行一个简单的方法调用,第二个是模拟一个耗时的业务方法。
工程代码,请参 ...
Groovy语法糖一览
groovy都已经2.4.*版本了,好多新特性,对于其他语言不算新了,积累的语法糖其实都是1.8以后都有的
// no class declareation -> subclass of Script
package com.innohub.syntax
// 输出太多,这个作为一块开始的标示
String hr = (1..10).collect{'***'}.join ...
开始使用Gradle
每一个Gradle build都从一个脚本开始。Gradle build script 的默认命名约定是build.gradle。 当在shell中执行命令gradle时,Gradle会查找这个叫build.gradle的文件。如果找不到,运行时就会显示一个帮助消息。
当然还是以hello World为例。
task helloWorld {
doLast {
...
Groovy for Gradle users
Gradle的核心功能是用Java建立的。在此之上是用动态语言Groovy编写的domain specific language(DSL)。当编写一个Gradle构建脚本时,你自动地就使用了由该DSL暴露出来的语言结构来表达你的构建指令。Gradle构建脚本是可执行的Groovy脚本,但它们不能被Groovy运行时运行。当实现定制逻辑的需求出现时,你可以使用Groovy的语言特性直接在Gr ...
关于exclusive range运算的符号
大概去年这个时候 Swift 语言把 half-open range operator 从 .. 改为了 ..<,引起了一些讨论。
实际上..<运算符的最早先例是 Groovy 语言。
而Groovy在初创之时,使用的是和 Ruby 一样的 range operator(.. 和 ...),在2005年4月左右将 ...改为了 ..<。
Groovy实现原理简单研究(2)
上回说到:
groovy负责词法、语法分析groovy文件,然后用asm生成普通的class文件,供jvm使用
这回稍许详细的分析一下源码。
我这里还是选用的最早期的groovy的初版。
整理好的代码可在附件下载,经过改装,可在maven2, maven3下编译通过,并导入到eclipse中。我这里就叫他为groovy0.1吧。
主程序在Compiler里,编译流程为3阶段。stageOne,s ...
Groovy实现原理简单研究(1)
本文简单研究一下Groovy的实现原理。我们会下载groovy源码并编译运行。最后简单的分析一下源代码原理。
1.实验环境
Win7 64bit
JDK 1.7.0_72
2.编译Groovy2.5
2.1 首先去以下地址clone代码
https://github.com/apache/incubator-groovy
本文写作时Groovy代码的版本是groovy2.5.0-SNAPSHO ...
groovy(Map)
1、groovy中的map遍历操作以及ftl页面的取值
goodsIds = UtilHttp.makeParamMapWithPrefix(request,"goodsId_",null);
goodsUnits = UtilHttp.makeParamMapWithPrefix(request,"goodsUnit_",null);
quantitys ...