kakfa项目编译:

cd /home/zhaofuxin/workspace/kafka-0.8.2.1-src

./gradlew releaseTarGz

会出现如下异常:

zhaofuxin@ubuntu-machine:~/workspace/kafka-0.8.2.1-src$ ./gradlew releaseTarGz

Downloading https://services.gradle.org/distributions/gradle-2.0-bin.zip

Exception in thread "main" javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
     at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:946)
     at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1312)
     at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1339)
     at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1323)
     at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:563)
     at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)
     at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1300)
     at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(HttpsURLConnectionImpl.java:254)
     at org.gradle.wrapper.Download.downloadInternal(Download.java:58)
     at org.gradle.wrapper.Download.download(Download.java:44)
     at org.gradle.wrapper.Install$1.call(Install.java:61)
     at org.gradle.wrapper.Install$1.call(Install.java:48)
     at org.gradle.wrapper.ExclusiveFileAccessManager.access(ExclusiveFileAccessManager.java:65)
     at org.gradle.wrapper.Install.createDist(Install.java:48)
     at org.gradle.wrapper.WrapperExecutor.execute(WrapperExecutor.java:128)
     at org.gradle.wrapper.GradleWrapperMain.main(GradleWrapperMain.java:61)
Caused by: java.io.EOFException: SSL peer shut down incorrectly
     at sun.security.ssl.InputRecord.read(InputRecord.java:482)
     at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927)

... 15 more

在 Downloading https://services.gradle.org/distributions/gradle-2.0-bin.zip 过程中会出现如上异常

https://services.gradle.org/distributions/gradle-2.0-bin.zip 的URL地址配置在/home/zhaofuxin/workspace/kafka-0.8.2.1-src/gradle/wrapper/gradle-wrapper.properties文件中。

是网络原因,多试几次后,就可以正常下

载了,有一个疑问,gradle已经安装了,为什么还会下载gradle-2.0-bin.zip文件,这个文件是什么用,下载到那个位置了?

从日志可以看出下载的位置是:/home/zhaofuxin/.gradle/wrapper/dists/gradle-2.0-bin

Unzipping /home/zhaofuxin/.gradle/wrapper/dists/gradle-2.0-bin/ahl4kci1szqczjl9kz6r1x20w/gradle-2.0-bin.zip to /home/zhaofuxin/.gradle/wrapper/dists/gradle-2.0-bin/ahl4kci1szqczjl9kz6r1x20w
Set executable permissions for: /home/zhaofuxin/.gradle/wrapper/dists/gradle-2.0-bin/ahl4kci1szqczjl9kz6r1x20w/gradle-2.0/bin/gradle
To honour the JVM settings for this build a new JVM will be forked. Please consider using the daemon: http://gradle.org/docs/2.0/userguide/gradle_daemon.html.

Building project 'core' with Scala version 2.10.4

cd /home/zhaofuxin/.gradle/wrapper/dists/gradle-2.0-bin/

发现下面有 gradle-2.0-bin.zip.lck 和gradle-2.0-bin.zip.ok 两个空的标示文件,所以当网络下载较慢是,可以把文件直接放到这个目录下,减少下载的耗时。

相关文件可以到我的共享地址下载:

http://pan.baidu.com/s/1qXatJLq

当出现如下标示时编译成功:

编译成功后, 在core/build/distributions/里面生成kafka_2.10-0.8.2.1.tgz文件,这个和从网上下载的一样,可以直接用。

./gradlew releaseTarGzAll -x signArchives

这时候将会编译成功(在编译的过程中将会出现很多的)。在编译的过程中,我们也可以指定对应的Scala版本进行编译:

./gradlew -PscalaVersion=2.10.3 releaseTarGz -x signArchives

=========================

kafka源码的编译:

gradle jar_core_2_10_4 --stacktrace

#使用gradle构建kafka项目

gradle build -x test

其中的-x test表示跳过unit test

======================================

重复下载安装包的原因是gradle的特性引起:这是好心办了坏事。
难道你不讨厌给不同的项目安装新的运行时环境?Gradle包装器是救星!
它允许你在任何需要允许构建的机器上从一个指定的仓库下载和安装一个Gradle允许时的新拷贝。
这个过程是在第一次构建执行时自动触发的。包装器对于一个给一个发布团队分享你的构建或者
在持续集成服务器上运行构建是非常有用的。

解决的方法:应该是修改包装器的参数。

kakfa源码编译打包的更多相关文章

  1. apache atlas源码编译打包 centos

    参考:https://atlas.apache.org/InstallationSteps.html https://blog.csdn.net/lingbo229/article/details/8 ...

  2. Hadoop源码编译过程

    一.           为什么要编译Hadoop源码 Hadoop是使用Java语言开发的,但是有一些需求和操作并不适合使用java,所以就引入了本地库(Native Libraries)的概念,通 ...

  3. Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程

    Ubuntu 14.04 LTS 下 android 2.3.5 源码编译过程   在新的Ubuntu 64位系统下去编译早期的安卓源码是会出现很多问题的,因为64位系统在安装完成后,很多32位的兼容 ...

  4. wso2esb源码编译总结

    最近花了两周的空闲时间帮朋友把wso2esb的4.0.3.4.6.0.4.7.0三个版本从源码编译出来了.以下是大概的一些体会. wso2esb是基于carbon的.carbon是个基于eclipse ...

  5. mpusher 源码编译 for windows X64

    mpusher 源码编译 for windows X64 对于java我是小白,通过一步步的摸索,将经验总结下来,给更多码友提供入门的帮助.一个人的摸索是很困难的,本教程感谢 [MPush开源消息推送 ...

  6. apache kafka & CDH kafka源码编译

    Apache kafka编译 前言 github网站kafka项目的README.md有关于kafka源码编译的说明 github地址:https://github.com/apache/kafka ...

  7. Spark环境搭建(六)-----------sprk源码编译

    想要搭建自己的Hadoop和spark集群,尤其是在生产环境中,下载官网提供的安装包远远不够的,必须要自己源码编译spark才行. 环境准备: 1,Maven环境搭建,版本Apache Maven 3 ...

  8. Win下Jenkins-2.138源码编译及填坑笔记

    源码编译篇 1.  安装JDK1.8-181,操作系统添加JDK环境变量.Java -version验证一下. 注:Jenkins2.138版本,JDK必须jkd1.8.0-101以上,不支持Java ...

  9. Android 源码编译之旅

    目录 前言 背景 安装软件 正文 Mac 分区 移动硬盘分区 Repo 下载源码 编译 源码导入 Android Studio 查看 碰到的问题 Could not find a supported ...

随机推荐

  1. Serialize Documents with the C# Driver

    1.介绍 该文档是1.8版本的C#驱动. 本节教程讨论C#类和BSON文档之间的序列化和反序列化.序列化是将对象映射成一个可以存储在MongoDB中的BSON文档的过程,反序列化是从一个BSON文档重 ...

  2. 时间戳转换成Date

    SimpleDateFormat format = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss" ); String date = for ...

  3. std的find和reverse_iterator联合使用

    上代码: // test2013.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <stdlib.h> #in ...

  4. 记录一下:chrome上,把网页保存为文件的插件

    插件地址: https://chrome.google.com/webstore/detail/full-page-screen-capture/fdpohaocaechififmbbbbbknoal ...

  5. php获取目录中的所有文件名

    <?php /** * [php获取目录中的所有文件名] */ //1.先打开要操作的目录,并用一个变量指向它 //打开当前目录下的目录pic下的子目录common. $handler = op ...

  6. 在Ecshop后台打印订单页面将商品按货号排序

    ECSHOP后台管理里的“打印订单" 页面里的商品排序有点乱,现在想改成按序号来排序,修改方法如下 下面是在2.7.2基础上做的修改 打开 admin/order.php  文件 找到(大约 ...

  7. android 数据库操作

    做android的数据库方面用的很少,所以用的时候记录下来,下次碰到直接copy,一下代码是最基本的实现: 首先是继承helper类: package com.create.rycreateim.db ...

  8. [充电][ios]ios充电接口

    知乎推荐:http://www.zhihu.com/topic/19693633/top-answers 外文教学网站: http://www.raywenderlich.com/ 著作权归作者所有. ...

  9. 第十一章 Android 内核驱动——Alarm

    11.1  基本原理 Alarm 闹钟是 android 系统中在标准 RTC 驱动上开发的一个新的驱动,提供了一个定时器 用于把设备从睡眠状态唤醒,当然因为它是依赖 RTC 驱动的,所以它同时还可以 ...

  10. Unity-Animator深入系列---目标匹配Target Matching

    回到 Animator深入系列总目录 一开始会理所当然的觉得,匹配是这样的: 但结果却是这样的(右边的Cube是匹配目标): 感觉这个接口应该是专门为攀爬之类的动画准备的,属于被动匹配位置,移动整个对 ...