源码下载与编译运行
源码下载
http://archive.apache.org/dist/zookeeper/zookeeper-3.5.7/
开发环境
Zookeeper: 3.5.7
Java: 1.8.0_102
Maven: 3.3.3
Windows 10
构建
解压、构建:
cd zookeeper-3.5.7-src
mvn clean install -Dmaven.test.skip=true
配置文件
在zookeeper-server/src/main/resources下创建conf目录,拷贝配置文件到zookeeper-server/src/main/resources/conf下面:
- conf/log4j.properties
- conf/zoo-sample.cfg -> zoo.cfg
修改zoo.cfg配置:
dataDir=D:\\tmp\\zookeeper-3.5.7
执行脚本
在zookeeper-server/src/main/resources下创建bin目录,在下面创建服务端启动脚本和client启动脚本:
startup-server.bat文件
java -cp ./conf;lib/*;zookeeper-3.5.7.jar org.apache.zookeeper.server.quorum.QuorumPeerMain ./conf/zoo.cfg
pause
startup-client.bat文件
java -cp ./conf;lib/*;zookeeper-3.5.7.jar org.apache.zookeeper.ZooKeeperMain -server localhost:2181
pause
修改pom.xml文件
修改zookeeper-server/pom.xml文件,加入拷贝配置和脚本文件的插件:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>copy-config-file</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<copy todir="${project.basedir}/target/conf">
<fileset dir="${project.basedir}/src/main/resources/conf">
<include name="*.*" />
</fileset>
</copy>
</target>
</configuration>
</execution>
<execution>
<id>copy-bin-file</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<target>
<copy todir="${project.basedir}/target">
<fileset dir="${project.basedir}/src/main/resources/bin">
<include name="*.bat" />
</fileset>
</copy>
</target>
</configuration>
</execution>
</executions>
</plugin>
重新构建
cd zookeeper-3.5.7-src
mvn clean install -Dmaven.test.skip=true
启动Server
使用target/startup-server.bat文件启动zookeeper服务:
cd zookeeper-server/target
startup-server.bat
启动Client
启动client:
cd zookeeper-server/target
startup-client.bat