`
AliKevin2011
  • 浏览: 118328 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

S4-环境搭建

阅读更多
AliKevin 写道

   本系列文章不涉及过多的S4的理论内容,因为s4论文中描述相当清楚(我认为我实在是说的不会比论文中更清楚了:)呵呵),论文信息请看论文http://dl.iteye.com/topics/download/704e5924-0dd8-34df-b44f-2efbc91de071



一、s4版本管理工具git的安装(ubuntu系统)
  • a.执行如下命令:
root@slave:~# sudo apt-get install git git-core       
Reading package lists... Done        
Building dependency tree       
Reading state information... Done      
The following extra packages will be installed:       
emacsen-common git-man liberror-perl       ....


  • b.安装后检查是否安装成功,执行如下git命令如下:

root@slave:~# git help
usage: git [--version] [--exec-path[=<path>]] [--html-path]
           [-p|--paginate|--no-pager] [--no-replace-objects]
           [--bare] [--git-dir=<path>] [--work-tree=<path>]
           [-c name=value] [--help]
           <command> [<args>]

The most commonly used git commands are:
   add        Add file contents to the index
   bisect     Find by binary search the change that introduced a bug
   branch     List, create, or delete branches
   checkout   Checkout a branch or paths to the working tree
   clone      Clone a repository into a new directory
   commit     Record changes to the repository
   diff       Show changes between commits, commit and working tree, etc
   fetch      Download objects and refs from another repository
   grep       Print lines matching a pattern
   init       Create an empty git repository or reinitialize an existing one
   log        Show commit logs
   merge      Join two or more development histories together
   mv         Move or rename a file, a directory, or a symlink
   pull       Fetch from and merge with another repository or a local branch
   push       Update remote refs along with associated objects
   rebase     Forward-port local commits to the updated upstream head
   reset      Reset current HEAD to the specified state
   rm         Remove files from the working tree and from the index
   show       Show various types of objects
   status     Show the working tree status
   tag        Create, list, delete or verify a tag object signed with GPG

See 'git help <command>' for more information on a specific command.



二、s4构建工具的依赖安装

在V0.3.x版本采用gradle进行构建代码,gradle能够对现有的maven机制进行利用。
1).安装Maven
a.download mavenhttp://mirror.bjtu.edu.cn/apache//maven/binaries/apache-maven-3.0.3-bin.tar.gz
b.安装参考http://maven.apache.org/download.html#Installation
2).安装Gradle
注:在进行s4构建前会自动下载,对构建s4这一步骤不是必须的,但我们开发自己程序时候仍然需要(可选)gradle:)
a.下载gradlehttp://repo.gradle.org/gradle/distributions/gradle-1.0-milestone-3-all.zip]
b.将gradle解压到你安装目录(gradle),我这里是/opt/gradle
c.修改prefile文件,增加环境变量S4_IMAGE。
root@slave:/kevin/s4# vi /etc/profile
       ...
       export S4_IMAGE=/kevin/s4/build/s4-image
       ...
   root@slave:source /etc/profile

d.验证s4的构建安装情况,
1).启动s4
root@slave:/kevin/s4# $S4_IMAGE/scripts/start-s4.sh
root@slave:/kevin/s4# $S4_IMAGE/scripts/start-s4.sh
Temp is /tmp/tmp.XNzI2ZfztP
CORE_HOME='/kevin/s4/build/s4-image/s4-core'
APPS_HOME='/kevin/s4/build/s4-image/s4-apps'
EXTS_HOME='/kevin/s4/build/s4-image/s4-exts'
GC_OPTS='-server -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:-UseGCOverheadLimit'
MEM_OPTS='-Xms800m -Xmx2000m'
JAVA_OPTS=' -Dcommlayer.mode=static  -Dzk.session.timeout=5000  -Dlock_dir=/kevin/s4/build/s4-image/s4-core/lock  -Dlog_loc=/kevin/s4/build/s4-image/s4-core/logs '
java location is /usr/jdk1.6.0_26/bin/
JAVA VERSION=java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode)

RUNNING /usr/jdk1.6.0_26/bin/java -server -XX:+HeapDumpOnOutOfMemoryError -XX:+UseConcMarkSweepGC -XX:-UseGCOverheadLimit  -Xms800m -Xmx2000m  -Dcommlayer.mode=static  -Dzk.session.timeout=5000  -Dlock_dir=/kevin/s4/build/s4-image/s4-core/lock  -Dlog_loc=/kevin/s4/build/s4-image/s4-core/logs  -classpath /kevin/s4/build/s4-image/s4-core:/kevin/s4/build/s4-image/s4-core/lib/activation-1.1.jar:/kevin/s4/build/s4-image/s4-core/lib/jakarta-regexp-1.4.jar:/kevin/s4/build/s4-image/s4-core/lib/commons-jexl-1.1.jar:/kevin/s4/build/s4-image/s4-core/lib/bcel-5.2.jar:/kevin/s4/build/s4-image/s4-core/lib/minlog-1.2.jar:/kevin/s4/build/s4-image/s4-core/lib/asm-3.2.jar:/kevin/s4/build/s4-image/s4-core/lib/log4j-1.2.15.jar:/kevin/s4/build/s4-image/s4-core/lib/gson-1.6.jar:/kevin/s4/build/s4-image/s4-core/lib/commons-logging-1.1.1.jar:/kevin/s4/build/s4-image/s4-core/lib/mail-1.4.jar:/kevin/s4/build/s4-image/s4-core/lib/junit-3.8.1.jar:/kevin/s4/build/s4-image/s4-core/lib/reflectasm-0.8.jar:/kevin/s4/build/s4-image/s4-core/lib/kryo-1.01.jar:/kevin/s4/build/s4-image/s4-core/lib/s4-comm-0.3.0.jar:/kevin/s4/build/s4-image/s4-core/lib/json-20090211.jar:/kevin/s4/build/s4-image/s4-core/lib/spring-2.5.6.jar:/kevin/s4/build/s4-image/s4-core/lib/commons-cli-1.2.jar:/kevin/s4/build/s4-image/s4-core/lib/jline-0.9.94.jar:/kevin/s4/build/s4-image/s4-core/lib/flexjson-2.1.jar:/kevin/s4/build/s4-image/s4-core/lib/s4-core-0.3.0.jar:/kevin/s4/build/s4-image/s4-core/lib/zookeeper-3.3.1.jar::::/tmp/tmp.XNzI2ZfztP:/kevin/s4/build/s4-image/s4-core/conf/default -DDequeuerCount=6 -Dlog4j.configuration=file:/kevin/s4/build/s4-image/s4-core/conf/default/log4j.xml io.s4.MainApp -c /kevin/s4/build/s4-image/s4-core -a /kevin/s4/build/s4-image/s4-apps -e /kevin/s4/build/s4-image/s4-exts -t default -d wall
appName=s4
dequeuer number: 6
[]
[]

如上信息证明s4启动成功,但此时没有部署任何应用在s4中。

2).启动adapter
root@slave:~# $S4_IMAGE/scripts/run-client-adapter.sh -s client-adapter \
> -g s4 -d $S4_IMAGE/s4-core/conf/default/client-stub-conf.xml
configuration location is /kevin/s4/build/s4-image/s4-core/conf/default
commlayer mode is static
Cluster manager localhost:2181
Sender cluster name client-adapter
Listener cluster name s4
java location is /usr/jdk1.6.0_26/bin/
JAVA VERSION=java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode)

Temp is /tmp/tmp.syup7UCLoB
appName=client-adapter
listenerAppName=s4
zk_address=localhost:2181
listener_max_queue_size=8000
Running /usr/jdk1.6.0_26/bin/java  -Dlock_dir=/kevin/s4/build/s4-image/s4-core/lock  -Dlog_loc=/kevin/s4/build/s4-image/s4-core/logs  -Dzk_session_timeout=5000 -Dcommlayer.mode=static -Dlog4j.configuration=file:/kevin/s4/build/s4-image/s4-core/conf/default/log4j.xml -classpath /kevin/s4/build/s4-image/s4-core/lib/activation-1.1.jar:/kevin/s4/build/s4-image/s4-core/lib/jakarta-regexp-1.4.jar:/kevin/s4/build/s4-image/s4-core/lib/commons-jexl-1.1.jar:/kevin/s4/build/s4-image/s4-core/lib/bcel-5.2.jar:/kevin/s4/build/s4-image/s4-core/lib/minlog-1.2.jar:/kevin/s4/build/s4-image/s4-core/lib/asm-3.2.jar:/kevin/s4/build/s4-image/s4-core/lib/log4j-1.2.15.jar:/kevin/s4/build/s4-image/s4-core/lib/gson-1.6.jar:/kevin/s4/build/s4-image/s4-core/lib/commons-logging-1.1.1.jar:/kevin/s4/build/s4-image/s4-core/lib/mail-1.4.jar:/kevin/s4/build/s4-image/s4-core/lib/junit-3.8.1.jar:/kevin/s4/build/s4-image/s4-core/lib/reflectasm-0.8.jar:/kevin/s4/build/s4-image/s4-core/lib/kryo-1.01.jar:/kevin/s4/build/s4-image/s4-core/lib/s4-comm-0.3.0.jar:/kevin/s4/build/s4-image/s4-core/lib/json-20090211.jar:/kevin/s4/build/s4-image/s4-core/lib/spring-2.5.6.jar:/kevin/s4/build/s4-image/s4-core/lib/commons-cli-1.2.jar:/kevin/s4/build/s4-image/s4-core/lib/jline-0.9.94.jar:/kevin/s4/build/s4-image/s4-core/lib/flexjson-2.1.jar:/kevin/s4/build/s4-image/s4-core/lib/s4-core-0.3.0.jar:/kevin/s4/build/s4-image/s4-core/lib/zookeeper-3.3.1.jar:::/kevin/s4/build/s4-image/s4-core/conf/default:/tmp/tmp.syup7UCLoB io.s4.client.Adapter -t default -c /kevin/s4/build/s4-image/s4-core -d /kevin/s4/build/s4-image/s4-core/conf/default/client-stub-conf.xml
appName=client-adapter
dequeuer number: 12
Adding InputStub genericStub
Adding OutputStub genericStub

如上信息证明adapter已经启动。

e.s4环境配置完毕


三、错误解决

   s4的安装中可能出现找不到依赖的 core和comm的jar包,如:comm-xxxx.jar,kryo-1.01.jar,reflectasm-0.8.jar和minlog-1.2.jar,这时需要利用maven添加s4core模块和comm模块的maven库。构建时候发出如下错误警告:
:: problems summary ::
:::: ERRORS
        Server access Error: Connection reset url=http://google-gson.googlecode.com/svn/mavenrepo/com/esotericsoftware/kryo/1.01/kryo-1.01.pom

        Server access Error: Connection reset url=http://google-gson.googlecode.com/svn/mavenrepo/com/esotericsoftware/kryo/1.01/kryo-1.01.jar

        Server access Error: Connection reset url=http://google-gson.googlecode.com/svn/mavenrepo/com/esotericsoftware/reflectasm/0.8/reflectasm-0.8.pom

        Server access Error: Connection reset url=http://google-gson.googlecode.com/svn/mavenrepo/com/esotericsoftware/reflectasm/0.8/reflectasm-0.8.jar

        Server access Error: Connection reset url=http://google-gson.googlecode.com/svn/mavenrepo/com/esotericsoftware/minlog/1.2/minlog-1.2.pom

        Server access Error: Connection reset url=http://google-gson.googlecode.com/svn/mavenrepo/com/esotericsoftware/minlog/1.2/minlog-1.2.jar

我们要进行添加:

1.添加comm及相关依赖
root@slave:/# cd kevin
     root@slave:/kevin# git clone git://github.com/s4/comm.git
     root@slave:/kevin#cd comm
     root@slave:/kevin/comm# mvn install:install-file -DgroupId=org.apache.hadoop -DartifactId=zookeeper -Dversion=3.1.1 -Dpackaging=jar -Dfile=lib/zookeeper-3.1.1.jar
     root@slave:/kevin/comm# mvn install
  ....
     [INFO] [jar:jar {execution: default-jar}]
     [INFO] Building jar: /kevin/comm/target/comm-0.2.1.0.jar
     [INFO] [install:install {execution: default-install}]
     [INFO] Installing /kevin/comm/target/comm-0.2.1.0.jar to /root/.m2/repository/io/s4/comm/comm/0.2.1.0/comm-0.2.1.0.jar
     [INFO] ------------------------------------------------------------------------
     [INFO] BUILD SUCCESSFUL
     [INFO] ------------------------------------------------------------------------
     [INFO] Total time: 2 minutes 9 seconds
     [INFO] Finished at: Sun Oct 16 23:26:53 PDT 2011
     [INFO] Final Memory: 17M/42M
     [INFO] ------------------------------------------------------------------------

2.添加core及相关依赖
root@slave:/# cd kevin
     root@slave:/kevin# git clone git://github.com/s4/core.git
     root@slave:/kevin#cd core
     root@slave:/kevin/core# mvn install:install-file -DgroupId=com.esotericsoftware -DartifactId=kryo -Dversion=1.01 -Dpackaging=jar -Dfile=lib/kryo-1.01.jar
     root@slave:/kevin/core# mvn install:install-file -DgroupId=com.esotericsoftware -DartifactId=reflectasm -Dversion=0.8 -Dpackaging=jar -Dfile=lib/reflectasm-0.8.jar
     root@slave:/kevin/core# mvn install:install-file -DgroupId=com.esotericsoftware -DartifactId=minlog -Dversion=1.2 -Dpackaging=jar -Dfile=lib/minlog-1.2.jar
     root@slave:/kevin/core# mvn assembly:assembly install
      ....
      ....
      [INFO] [jar:jar {execution: default-jar}]
      [INFO] [install:install {execution: default-install}]
      [INFO] Installing /kevin/core/target/s4_core-0.3.0.0.jar to /root/.m2/repository/io/s4/s4_core/0.3.0.0/s4_core-0.3.0.0.jar
      [INFO] ------------------------------------------------------------------------
      [INFO] BUILD SUCCESSFUL
      [INFO] ------------------------------------------------------------------------
      [INFO] Total time: 1 minute 28 seconds
      [INFO] Finished at: Sun Oct 16 23:43:05 PDT 2011
      [INFO] Final Memory: 16M/49M
      [INFO] ------------------------------------------------------------------------


至此,相信你已经能将S4的环境配置成功了。:)

分享到:
评论

相关推荐

    Dragonboard410c开发入门-怎样搭建开发环境.ppt

    【Dragonboard 410c 开发环境搭建详解】 Dragonboard 410c 是一款基于 Qualcomm Snapdragon 410 八核处理器的开源开发板,适用于嵌入式开发、物联网应用以及人工智能学习等场景。要开始使用 Dragonboard 410c 进行...

    Dragonboard-410c-开发入门-怎样搭建开发环境(PPT37页).ppt

    本文将详细介绍如何搭建 Dragonboard 410c 的开发环境。 首先,你需要准备以下配件来开始开发工作: 1. Dragonboard 410c 主板 2. 5V/2.2A 电源适配器 3. HDMI 线 4. 显示器 5. USB 键盘和鼠标 6. microSD 卡...

    jetson TX2环境搭建

    ### Jetson TX2环境搭建详解 #### 一、初次开机及基本硬件连接 初次使用Jetson TX1/TX2开发板时,需按照正确的步骤进行硬件连接与开机操作。 1. **开发板底板接口图**:理解各接口的功能至关重要。例如,J16为...

    STC51单片机IAP15W4K58S4最小系统板-教程资料-技小新-IAP15W4K58S4最小系统板-程序烧写方法.pdf

    1. **开发环境搭建**: - **编译工具**:通常采用Keil C51作为编译工具。它能将C语言源代码编译为适用于STC51系列单片机的目标代码。 - **硬件准备**:确保拥有IAP15W4K58S4最小系统板及相关配套设备(如USB转串口...

    S4硬复制全套工具_深思S4硬复制_深思_深思S4_深思锁_深思s4复制_

    这对于系统备份、故障恢复和测试环境搭建等场景极其重要。通过硬复制,用户可以在不影响生产环境的前提下,对复制的系统进行各种操作,如升级、调试或性能优化,确保任何问题不会影响到实际运行的系统。 其次,深思...

    STC51单片机IAP15W4K58S4最小系统板-教程资料-技小新-IAP15W4K58S4最小系统板《原理图》.pdf

    1. **环境搭建**:选择合适的开发环境,如Keil uVision或IAR Embedded Workbench。 2. **程序编写**:根据具体需求编写代码,利用单片机的资源实现所需功能。 3. **调试测试**:通过仿真器或JTAG接口对程序进行调试...

    SAP S4 HANA 1610 使用帮助

    以上配置适合搭建一个既能用于日常游戏又能满足 SAP S/4HANA on-premise edition 1610 服务器需求的高性能 PC 机箱。 综上所述,SAP S/4HANA on-premise edition 1610 提供了一个全面的企业资源规划解决方案,集成...

    STC15W4K56S4开发板资料V2

    同时,资料中可能包含详细的原理图、电路图和接线指南,帮助用户快速搭建实验环境。 芯片手册是STC15W4K56S4开发资料的核心部分,它详细列出了芯片的所有功能和引脚定义,提供了寄存器配置、指令集、中断系统、时钟...

    使用单片机IAP15W4K61S4+数码管静态显示从0到15+proteus仿真

    在Proteus环境中,我们可以搭建IAP15W4K61S4单片机、数码管模型和其他必要的电子元件,如电源、电阻、电容等。通过编写和烧录单片机程序,然后在Proteus中运行,可以直观地看到数码管显示的效果,从而验证代码的正确...

    尚硅谷S4S2H4整合案例视频教程

    整合环境搭建 - **Spring与Struts2整合**:首先需要在Struts2配置文件中添加对Spring的支持,以便实现控制层与业务层之间的解耦。 - **Spring与Hibernate整合**:配置Spring来管理Hibernate SessionFactory,以及...

    S2S4H5空项目

    【S2S4H5空项目】是一个基于Java技术栈的开发项目,其名称可能代表某种特定的架构或规范,但未提供详细信息,我们只能根据"空项目"这一描述来推测,它可能是用于初始化一个新的Java开发环境或者作为模板,方便开发者...

    S2S4H4單查詢jar齊全

    这可能是一个用于数据库查询的工具或服务,或者是一个包含了所有依赖项的项目库,方便开发者快速搭建和运行环境。 描述中的"必須用的起"暗示了这个资源包对于某个开发任务或场景非常必要,并且应该易于使用和集成。...

    s4需要的包,已经测试过,很全

    使用这个压缩包,开发者可以快速地搭建一个运行环境,进行S4应用的开发和测试,而不必逐一查找和配置各个依赖。同时,由于已经经过测试,用户可以相对放心地使用,避免了因版本不兼容或缺失依赖而导致的问题。 总结...

    基于Java的Yahoo的分布式流计算平台 S4.zip

    开发者可以阅读文档理解S4的原理,通过示例应用了解其编程模型,并在本地环境或云平台上搭建S4集群进行实践。 总结来说,S4是Yahoo开发的一个强大工具,用于处理大规模实时数据流。它结合了Java的灵活性和强大的...

    course_s4_ZYNQ那些事儿-Linux实验篇V1.06.pdf.7z

    《course_s4_ZYNQ那些事儿-Linux实验篇V1.06》是一份深入探讨ZYNQ系统级芯片在Linux环境下的应用实践教程。ZYNQ是Xilinx公司推出的一种高度集成的处理平台,结合了可编程逻辑(FPGA)和双核ARM Cortex-A9处理器,为...

    模拟器S4 MUONLINE

    - **emulator**:意味着这个项目是一个游戏模拟器,它能够在非官方环境中运行原本需要特定硬件或软件环境才能运行的游戏。 - **source**:表示这是源代码级别的项目,用户可以直接查看和修改底层代码。 4. **...

    ominous-beeping-app:using使用Flutter从Rick and Morty S4E2制作Ominous-beeping应用程序

    综上所述,“ominous-beeping-app”项目涵盖了Flutter开发的基本流程,包括环境搭建、Dart编程、UI设计、音频处理、事件响应和应用发布等多个环节。通过学习和实践这个项目,开发者不仅可以掌握Flutter和Dart的核心...

    第2部分:艾克姆资料2.rar

    在本节中,我们将深入探讨有关“合肥艾克姆科技EasySTC8A8K开发板”的主题,以及如何利用给定的资源“第2部分:艾克姆资料2.rar”来搭建针对STC8A8K64S4A12微控制器的开发环境。STC8A8K64S4A12是一款高性能、低功耗...

    OpenTSN组网操作手册1

    《OpenTSN组网操作手册1》是针对OpenTSN(开放时间敏感网络)环境搭建的详细指南,旨在帮助用户了解如何配置设备并构建实验环境。本文档主要分为设备配置和设备连接两个部分,适用于对TSN技术感兴趣的IT专业人士。 ...

Global site tag (gtag.js) - Google Analytics