今天为了学习 怎样使用 Groovy 写 Groovy 的測试代码, 所以到 http://groovy.codehaus.org/Download 下载了 Groovy 2.3.8 的源码包.

Groovy 是採用 Gradle 作为 构建工具的. 先看我本地的 Gradle 的相关环境:

  1. >gradle -v
  2.  
  3. ------------------------------------------------------------
  4. Gradle 2.2
  5. ------------------------------------------------------------
  6.  
  7. Build time: 2014-11-10 13:31:44 UTC
  8. Build number: none
  9. Revision: aab8521f1fd9a3484cac18123a72bcfdeb7006ec
  10.  
  11. Groovy: 2.3.6
  12. Ant: Apache Ant(TM) version 1.9.3 compiled on December 23 2013
  13. JVM: 1.8.0_25 (Oracle Corporation 25.25-b02)
  14. OS: Windows 7 6.1 amd64

然后我在加压缩之后的源代码根文件夹下输入  gradle tasks  ,

gradle 開始从 jcenter 下载须要的 jar 包,

然后開始编译,

最后出现这个错误:

  1. Detected development environment
  2. Deployment environment set to Bintray
  3.  
  4. FAILURE: Build failed with an exception.
  5.  
  6. * Where:
  7. Script 'H:\TDDownload\groovy-src-2.3.8\groovy-2.3.8\gradle\pomconfigurer.gradle' line: 10
  8.  
  9. * What went wrong:
  10. A problem occurred evaluating script.
  11. > Could not find property 'groovy' on configuration container.
  12.  
  13. * Try:
  14. Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
  15.  
  16. BUILD FAILED
  17.  
  18. Total time: 5 mins 7.403 secs

我接着用 gradle tasks --info  命令再跑一遍, 还是出现以下的错误:

  1. Detected development environment
  2. Deployment environment set to Bintray
  3.  
  4. FAILURE: Build failed with an exception.
  5.  
  6. * Where:
  7. Script 'H:\TDDownload\groovy-src-2.3.8\groovy-2.3.8\gradle\pomconfigurer.gradle' line: 10
  8.  
  9. * What went wrong:
  10. A problem occurred evaluating script.
  11. > Could not find property 'groovy' on configuration container.
  12.  
  13. * Try:
  14. Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output.
  15.  
  16. BUILD FAILED
  17.  
  18. Total time: 7.911 secs
  19. Stopped 0 compiler daemon(s).
  20. Received result DaemonCommandResult[type=CommandFailure, value=org.gradle.launcher.exec.ReportedException: org.gradle.internal.exceptions.LocationAwareException
  21. : Script 'H:\TDDownload\groovy-src-2.3.8\groovy-2.3.8\gradle\pomconfigurer.gradle' line: 10
  22. A problem occurred evaluating script.] from daemon DaemonInfo{pid=7252, address=[65f71eaa-6377-4a8a-9370-d90fced0f265 port:50883, addresses:[/127.0.0.1, /0:0:0:
  23. 0:0:0:0:1]], idle=false, context=DefaultDaemonContext[uid=581b3403-93ac-4a93-bcd9-d5374bbb9a86,javaHome=H:\ProgramFiles\Java\jdk1.8.0_25,daemonRegistryDir=C:\Us
  24. ers\chenjo\.gradle\daemon,pid=7252,idleTimeout=120000,daemonOpts=-XX:MaxPermSize=196m,-XX:+CMSClassUnloadingEnabled,-XX:+CMSPermGenSweepingEnabled,-Xmx640m,-Dfi
  25. le.encoding=GBK,-Duser.country=CN,-Duser.language=zh,-Duser.variant]}.

如何绕过这个错误呢?  难道是我的 Gradle 的版本号问题?

于是我打开文件  H:\TDDownload\groovy-src-2.3.8\groovy-2.3.8\README.adoc ,

发现里面说到:

  1. To build everything using Gradle (the command below will download Gradle automatically, you do not need to download it first).
  2.  
  3. ./gradlew clean dist

于是我就打开 命令行 窗体 到 源代码文件夹下,  键入:  gradlew clean dist

我发现这个命令会首先下载一个 gradle-1.12 -all 到本地

C:\Users\chenjo\.gradle\wrapper\dists\gradle-1.12-all

然后加压缩, 然后在以该版本号下载 jar 包 以及进行 编译, 汇总.... 尽管中间有一些警告, 或是下载 jar 包时网络受阻, 我就中断命令又一次运行几次, 最后 build 成功.

  1. Applying Javadoc fix tool (see http://www.kb.cert.org/vuls/id/225657) into H:\TDDownload\groovy-src-2.3.8\groovy-2.3.8\target\alljavadoc
  2. :doc
  3. :distDoc
  4. :distSrc
  5. :groovydoc
  6. :javadoc
  7. Applying Javadoc fix tool (see http://www.kb.cert.org/vuls/id/225657) into H:\TDDownload\groovy-src-2.3.8\groovy-2.3.8\target\docs\javadoc
  8. :syncDoc
  9. :dist
  10.  
  11. BUILD SUCCESSFUL
  12.  
  13. Total time: 18 mins 2.66 secs

然后我看到 生成的 target 目录 竟然有 500 多 M 字节.

在 项目文件夹\target\distributions\ 下, 有例如以下生成的公布文件:

groovy-binary-2.3.8.zip

groovy-docs-2.3.8.zip

groovy-sdk-2.3.8.zip

groovy-src-2.3.8.zip

亲自己主动手从源代码 构建 Groovy 2.3.8 公布包的更多相关文章

  1. ActiveMQ从源代码构建

    众多开源项目.我们一般都是直接拿过来用之而后快. 只是我们也应该知道这些项目是怎样从源代码构建而来的. 既然代码是写出来的,就不能避免有BUG存在,话说没有完美的软件,也没有无漏洞的程序. 事实上从源 ...

  2. 从源代码构建 Go 开发环境

    从源代码构建 Go 开发环境 Go 1.5 之前的版本 安装C 语言开发环境 在Go 1.5 之前的版本(比如 1.3.1.4),都会部分的依赖 C 语言的工具链,所以如果你有C 语言的开发环境,就可 ...

  3. 24 使用Maven 或 Gradle构建groovy

    1       使用Maven 或 Gradle构建groovy 1.1  使用maven构建groovy pom.xml file. <dependencies>     ... oth ...

  4. cocos2d-x 手游源代码站

    尊重开发人员的劳动成果,转载的时候请务必注明出处:http://blog.csdn.net/haomengzhu/article/details/37829061 1.魔幻方块 链接:魔幻方块源代码 ...

  5. jquery autocomplete文本自己主动补全

    文本自己主动补全功能确实非常有用. 先看下简单的效果:(样式不咋会写) 以下介绍几种: 1:jqery-actocomplete.js 这个网上有个写好的实例,上面挺具体的,能够下来执行下就清楚了就不 ...

  6. 《iOS开发全然上手——使用iOS 7和Xcode 5开发移动与平板应用》之Objective-C新手训练营

    编写Hello World应用程序通常被觉得,是学习不论什么编程语言的第一步.在这一章,你将创建iOS版的Hello World应用程序作为起步,高速了解Xcode这个开发iOS应用程序的主要工具. ...

  7. 【C语言探险】 第四课的第二部分:串

    内容简单介绍 1.课程大纲 2.第二部分第四课: 字符串 3.第二部分第五课预告: 预处理 课程大纲 我们的课程分为四大部分,每个部分结束后都会有练习题,并会发布答案.还会带大家用C语言编写三个游戏. ...

  8. 使用jprobe建设镜面层叠的原则和见解

    忽然想起的回忆,那是2007上周五在冬季,我看我的老湿调试Linux堆IP层,只看到他改变路由查找的逻辑,然后直接make install上的立竿见影的效果有点,我只知道,,这种逻辑必须再次更改编译内 ...

  9. 高速入门:十分钟学会Python

    初试牛刀 如果你希望学习Python这门语言.却苦于找不到一个简短而全面的新手教程.那么本教程将花费十分钟的时间带你走入Python的大门.本文的内容介于教程(Toturial)和速查手冊(Cheat ...

随机推荐

  1. 不同的activity使用bundle对象传值给广播接收器

    解决了一下午的问题,广播机制传值,在一个activity中发送广播给广播接收器,使用的是同一个action 在另一个activity中如果也发送广播给同一个广播接收器,使用相同的action,会导致后 ...

  2. A profile to detect when a SMS database has been changed

    http://webmail.dev411.com/t/gg/tasker/12bdddbsak/a-profile-to-detect-when-a-sms-has-been-sent A bela ...

  3. Oracle中NVARCHAR2与VARCHAR2的相互转换

    将NVARCHAR2转换为VARCHAR2: declare v_username   varchar2(12)   ; v_nm_login   nvarchar2(12); begin selec ...

  4. wrote a programming language

    https://medium.freecodecamp.org/the-programming-language-pipeline-91d3f449c919

  5. 深入理解 Java中的 流 (Stream)

    首先,流是什么? 流是个抽象的概念.是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以"流"的方式进行.设备能够是文件,网络,内存等. 流具有方向性,至于是输入 ...

  6. WebSocket重连reconnecting-websocket.js的使用

    原文:https://www.cnblogs.com/kennyliu/p/6477746.html   页面引用 <script src="~/Scripts/reconnectin ...

  7. objective-c block 详解 转

    Block   Apple 在C, Objective-C, C++加上Block這個延申用法.目前只有Mac 10.6 和iOS 4有支援.Block是由一堆可執行的程式組成,也可以稱做沒有名字的F ...

  8. 别忽视UIImage中的方向属性, imageOrientation-转

    转 : 别忽视UIImage中的方向属性, imageOrientation

  9. Additive属性动画

    Additive属性动画 参考 http://ronnqvi.st/multiple-animations/ 效果 源码 https://github.com/YouXianMing/Animatio ...

  10. VMware+Windgb+Win7内核驱动调试

    com1被占用了,需要用com2