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 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进行编译为eclipseproject
Zookeeper GitHub的下载地址是:https://github.com/apache/zookeeper
解压,打开cmd。切换到Zookeeper源代码的根文件夹以下(以下有一个build.xml文件),然后输入命令> ant eclipse
出现以下界面提示编译成功:
然后打开eclispe,随便什么版本号,选择import。类型是现有的eclispeproject。
点击完毕。可是发现我的源代码居然有好几处错误。只是类型都是一样,都是Cannot switch on a value of type XXX:
在网上查了一下,跟project文件使用来编译的JDK版本号有关,须要将jdk 7切换到jdk 6:
在导入的Zookeeperproject上面点击右键-》properties-》Java Compiler,将compiler compliance level切换为1.6:
这样错误就消失了,以下就能够開始进入真正的Zookeeper源代码之旅了。
Zookeeper源代码编译为Eclipseproject(win7下Ant编译)的更多相关文章
- Zookeeper源码编译为Eclipse工程(win7下Ant编译)
前言 ZooKeeper是雅虎的.用Ant进行软件构建. 千里之行,始于足下.想看源码的第一步,是下载源码并导入某个IDE工具. Ant http://ant.apache.org/ Windows: ...
- Win7下VS2008编译QtiPlot
Win7下VS2008编译QtiPlot By wangsh 2011-11-25 QtiPlot 是一款开源免费的科学绘图软件,可运行在多个平台(windows.Linux等)中,从功能上讲,Qti ...
- 【FAQ】Ubuntu环境下ant编译android代码问题
在Ubuntu14.04环境下,编译android程序时候,运行ant debug的时候出现如下异常:
- Win7下静态编译QT5.12源码
官方参考文档:https://doc.qt.io/qt-5/build-sources.html CSDN博客:https://blog.csdn.net/GG_SiMiDa/article/deta ...
- mongodb及mongoclient在win7下的编译和使用
1.导言 折腾mongodb几个小时最终有结果了.呃.如今就简单总结一下. 事实上我的需求非常easy,就是在C++代码中调用mongodb的库函数.也就是要得到mongoclient.lib.本来想 ...
- 终于解决了一个Win7 下 VS 编译的问题,困扰了我好几个月
用 Win7 一年多了,一直在这个环境下编程,其他都挺好,就是有个问题非常恶心,在VS下编译经常出现进程正在使用,无法覆盖的错误,这个问题我记得博问中以前也有其他人遇到过,也没有解决掉.此问题困扰了我 ...
- opencv3.1 + opencv_contrib编译记事(win7下)
折腾了好几天,终于把opencv3.1加上一个额外的包opencv_contrib编译好了.(总体来说编译opencv就是填坑!!!) 最后我编译成功的是mingw版本的.也就是结合了Qt4.7+cm ...
- MXNet在64位Win7下的编译安装
注:本文原创,作者:Noah Zhang (http://www.cnblogs.com/noahzn/) 我笔记本配置比较低,想装个轻量级的MXNet试试,装完之后报错,不是有效的应用程序,找不到 ...
- win7下cmake编译opencv2.3.1生成opencv—createsamples.exe和opencv_haartrainingd.exe
第一步:下载安装cmake,之后进行默认安装即可,这步略过. 第二步:配置cmake ,使cmake找到opencv进行编译安装 watermark/2/text/aHR0cDovL2Jsb2cuY3 ...
随机推荐
- oc12--对象作为参数
// main.m // 对象作为方法的参数传递 #import <Foundation/Foundation.h> /* 士兵 事物名称: 士兵(Soldier) 属性:姓名(name) ...
- SSH整合报错:找不到元素 'beans' 的声明
转自:https://blog.csdn.net/haozhugogo/article/details/54233608 spring版本问题,将bean.xml中xsd文件定义的版本改为spring ...
- xenserver 增加新硬盘
xenserver 增加新硬盘 1.XS创建本地存储 首先 分区好的的硬盘接到服务器上 查看所有硬盘了的id ls -l /dev/disk/by-id/ 记下硬盘的全称.接下来开始挂载 xe sr ...
- 用WPF做关于MEF 简单学习记录
写在前面:下面学习所得多是从自http://www.cnblogs.com/comsokey/p/MEF1.html和http://www.cnblogs.com/yunfeifei/p/392266 ...
- 45.Qt openGL实现三维绘图
main.cpp #include <QApplication> #include <iostream> #include "tetraheadron.h" ...
- DWR框架在web.xml的完整配置及注释
<!-- 配置DWR框架 --> <servlet> <servlet-name>dwr</servlet-name> <servlet-clas ...
- 更换WordPress后台登录地址
在后台找到wp-content—themes—twentyfifteen(当前的网站主题)—functions.php 在代码的最下面加入以下代码: //后台唯一登录地址 add_action('lo ...
- css3实现3D切割轮播图案例
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- 'input propertychange' 当输入框文字改变时触发的事件!
$('.amount_input').bind('input propertychange', function() { console.log(2); $('.list label').remove ...
- 【转】Oracle基础结构认知—oracle物理结构 礼记八目 2017-12-13 20:31:06
原文地址:https://www.toutiao.com/i6499008214980362765/ oracle数据库启动:oracle服务启动,通过参数文件查找控制文件,启动控制文件,则控制文件调 ...