Zookeeper源码学习1:win7下Ant编译Zookeeper源码为Eclipse工程

1、什么是Ant???

Apache Ant?

Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other. The main known usage
of Ant is the build of Java applications. Ant supplies a number of built-in tasks allowing to compile, assemble, test and run Java applications. Ant can also be used effectively to build non Java applications, for instance C or C++ applications. More generally,
Ant can be used to pilot any type of process which can be described in terms of targets and tasks.

Ant is written in Java. Users of Ant can develop their own "antlibs" containing Ant tasks and types, and are offered a large number of ready-made commercial or open-source "antlibs".

Ant is extremely flexible and does not impose coding conventions or directory layouts to the Java projects which adopt it as a build tool.

Software development projects looking for a solution combining build tool and dependency management can use Ant in combination with Apache
Ivy
.

The Apache Ant project is part of the Apache Software Foundation.

Apache Ant,是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。由Apache软件基金会所提供。

用过Linux系统的人都应该知道 make这个命令。当编译Linux内核及一些软件的源程序时,经常要用这个命令。Make命令其实就 是一个项目管理工具,而Ant所实现功能与此类似。像make,gnumake和nmake这些编译工具都有 一定的缺陷,但是Ant却克服了这些工具的缺陷。最初Ant开发者在开发跨平台的应用时,同样也 是基于这些缺陷对Ant做了更好的设计。

Ant的核心是其构建文件,当开始一个新的项目时,首先应该编写Ant构建文件。构建文件定义了构建过程,并被团队开发 中每个人使用。Ant构建文件默认名为build.xml,也可以取其他的名字。只不过在运行的时候 把这个命名当作参数传给Ant。构建文件可以放在任何的位置。一般做法是放在项目顶层目录中。 这样可以保持项目的简洁和清晰。下面是一个典型的项目层次结构。

(1) src存放文件。

(2) class存放编译后的文件。

(3) lib存放第三方JAR包。

(4) dist存放打包,发布以后的代码。

更多关于ant的知识大家可以自行搜索。

2、安装ant

(1)下载ant,我下载的是apache-ant-1.9.4-bin.zip(地址:http://ant.apache.org/bindownload.cgi

(2)解压到特定目录,设置ANT_HOME(ant的解压路径)和path(%ANT_HOME%\bin)

(3)打开cmd,运行ant -version,出现版本信息说明安装成功了。

3、下载Zookeeper源码并用ant进行编译为eclipse工程

Zookeeper GitHub的下载地址是:https://github.com/apache/zookeeper

解压,打开cmd,切换到Zookeeper源码的根目录下面(下面有一个build.xml文件),然后输入命令> ant eclipse

出现下面界面提示编译成功:

然后打开eclispe,随便什么版本,选择import,类型是现有的eclispe工程。

点击完成,但是发现我的源码竟然有好几处错误,不过类型都是一样,都是Cannot switch on a value of type XXX:

在网上查了一下,跟工程文件使用来编译的JDK版本有关,需要将jdk 7切换到jdk 6:

在导入的Zookeeper工程上面点击右键-》properties-》Java Compiler,将compiler compliance level切换为1.6:

这样错误就消失了,下面就可以开始进入真正的Zookeeper源码之旅了!

时间: 2024-01-31 07:28:41

Zookeeper源码学习1:win7下Ant编译Zookeeper源码为Eclipse工程的相关文章

Zookeeper源代码编译为Eclipseproject(win7下Ant编译)

为了深入学习ZooKeeper源代码,首先就想到将其导入到Eclispe中,所以要先将其编译为Eclispeproject. 1.什么是Ant??? Apache Ant? Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each

【Linux学习】Ubuntu下内核编译(一)

(1)当要执行内核配置时,输入make menuconfig时出现错误 遇到这个问题,主要是以为没有ncurses库,而make menconfig 需要这个库,因此需要安装ncurses或者ncurses-devel即可.输入命令:sudo  apt-get  install ncurses或者sudo apt-get  install ncurses-devel. (2)错误 drivers/input/touchscreen/eeti_ts.c: In function 'eeti_ts_

java进阶(六)------源码学习---myeclipse如何查看jar包的源码

查看源码的思路和代码规范是我们学习完善代码编写能力的重要手段. 有时候我们会遇到想看某个jar包中的类和方法的实现,但是无法查看. 这是因为未加载jar包的源码.只要找到jar包的源码并把路径设置好 就可以查看了. 源码下载 源码的下载 需要自己按照版本找好,可以是zip也可以是jar包. 这里有几个找源码的网站,也可以去jar包的官网查找. github https://github.com/openjdk-mirror/jdk7u-jdk sourceforge https://source

FastDFS源码学习(一)FastDFS介绍及源码编译安装

FastDFS是淘宝的余庆主导开发的一个分布式文件系统,采用C语言开发,性能较优.在淘宝网.京东商城.支付宝和某些网盘等系统均有使用,使用场景十分广泛. 下图来源:https://blog.csdn.net/kyriehe/article/details/52431495 目前这个系统的源码已在github上开源.编译FastDFS需要下载以下源码:FastDFS,下载地址:https://github.com/happyfish100/fastdfs libfastcommon,下载地址:ht

win7下vs2010编译调试stl源代码

平台环境:windows 7 32位+VS2010+STL源代码5.2.1 STL在sourceforge下载,如果不可以下载,可以在csdn下载. 下载好源码后,首先解压到硬盘,我解压到D:\STL. 在vs2010 tools选择“Visual Studio 命令提示(VS2010)” 在cmd窗口,目录切换到刚刚解压源码的根目录, 输入configure -help查看编译选项 显示平台式XP,这里暂时不管. 输入configure msvc9配置环境 上面红框里面的内容不用去管. 之后切

Ubuntu12.04编译Android4.0.1源码全过程-----附wubi安装ubuntu编译android源码硬盘空间不够的问题解决

本文转至  http://blog.csdn.net/yanzi1225627/article/details/9263097 昨晚在编译源码,make一段时间之后报错如下: [html] view plaincopyprint? # A fatal error has been detected by the Java Runtime Environment: # #  SIGSEGV (0xb) at pc=0x40362d33, pid=12195, tid=2835454784 # # 

mongodb及mongoclient在win7下的编译和使用

1.导言 折腾mongodb几个小时终于有结果了.呃!现在就简单总结一下. 其实我的需求很简单,就是在C++代码中调用mongodb的库函数,也就是要得到mongoclient.lib.本来想直接下载个,可在网上也没找到,觉得重新编译也不麻烦,于是就下了源码编译.可下错了源码,编了半天也编不出来,晕! 其实就是参考了网友们的文章,在这里下载了源码mongodb-src-r2.6.3.zip.编译命令也很简单,大家都说直接输入:scons mongoclient.lib即可,可不断弹出这样的错误:

JVM(一) OpenJDK1.8源码在Ubuntu16.04下的编译

笔者最近在学习周志明老师编写的<深入理解Java虚拟机>一书,书中第一章的实战部分就是"自己编译JDK",不过书中提到的是OpenJDK 7的编译.由于现在Java开发主流的JDK基本都是1.8的版本,所以,笔者就进行了OpenJDK 8的编译.  (本文为博主原创文章,转载请注明出处) 一.环境准备 1. 操作系统 笔者用的是Ubuntu 16.04.2 LTS (GNU/Linux 4.8.0-36-generic x86_64),当然其他debian的Linux操作系

Spring源码学习:第1步--在Spring源码中添加最简单的Demo代码

为了最大程度地贴近Spring源码并进行学习,一种比较直接的做法是:直接在Spring源码中加入Demo代码,并进行调试. 参照以前使用Spring的经验,Spring最简单的使用方法是:一个实体类.一个Xml配置文件.再加个测试方法.而对于脱离源码的使用,需要至少引入 spring-context 依赖.于是,猜想,在Spring源码中是否可以直接在 spring-context 模块中添加上述最简单的代码呢? 说干就干,在 spring-context 模块中新建一个实体类(Person,位