dubbo2.4.11-编译安装开发

2 篇文章 0 订阅

 

 

准备

zookeeper-3.4.9.tar.gz

tomcat-7.0.72.tar.gz

 

安装配置zookeeper

wget http://mirrors.cnnic.cn/apache/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz

tar -xvf zookeeper-3.4.9.tar.gz

cd /usr/local/zookeeper-3.4.9/conf

cp zoo_sample.cfg zoo.cfg

vim zoo.cfg

dataDir=/usr/local/zookeeper-3.4.9/data

vim /etc/profile

exportZOOKEEPER_HOME=/usr/local/zookeeper-3.4.9

export PATH=$PATH:$ZOOKEEPER_HOME/bin

./zkServer.sh start

./zkServer.sh status

 

安装tomcat

下载tomcat-7.0.72.tar.gz

tar xvf tomcat-7.0.72.tar.gz

cd /usr/local/ tomcat-7.0.72/webapps/ROOT/

rm –rf *

 

编译dubbo2.4.11

下载

https://github.com/alibaba/dubbo/archive/dubbo-2.4.11.zip

dubbo-dubbo-2.4.11.zip

 

解压

dubbo-dubbo-2.4.11

 

问题:opensesame

https://github.com/alibaba/opensesame

下载pom.xml放到opensesame目录

mvn clean install -Dmaven.test.skip

修改pom.xml重新编译

<groupId>com.alibaba</groupId>

   <artifactId>opensesame</artifactId>

         <!--2.0修改为1.0 -->

   <version>1.0</version>

   <packaging>pom</packaging>

mvn clean install -Dmaven.test.skip

 

问题:fastjson

修改dubbo-dubbo-2.4.11\pom.xml

找到<fastjson_version>1.1.8</fastjson_version>

将1.1.8修改为1.1.39

 

修改dubbo-dubbo-2.4.11\pom.xml

注释以下内容:

<!--

<repositories>

         <repository>

                   <id>opensesame.releases</id>

                   <url>http://code.alibabatech.com/mvn/releases</url>

                   <releases>

                            <enabled>true</enabled>

                   </releases>

                   <snapshots>

                            <enabled>false</enabled>

                   </snapshots>

         </repository>

</repositories>

-->

 

问题:hessian-lite

https://github.com/alibaba/dubbo/tree/master/hessian-lite

下载hessian-lite,放入dubbo-dubbo-2.4.11目录

修改dubbo-dubbo-2.4.11\pom.xml

<modules>

    <!-- 增加 hessian-lite-->

   <module>hessian-lite</module>

         <module>dubbo-common</module>

         <module>dubbo-container</module>

         <module>dubbo-remoting</module>

         <module>dubbo-rpc</module>

         <module>dubbo-filter</module>

         <module>dubbo-cluster</module>

         <module>dubbo-registry</module>

         <module>dubbo-monitor</module>

         <module>dubbo-config</module>

         <module>dubbo</module>

</modules>

 

修改dubbo-dubbo-2.4.11\hessian-lite\pom.xml

<parent>

   <groupId>com.alibaba</groupId>

   <artifactId>dubbo-parent</artifactId>

   <!--<version>2.5.4-SNAPSHOT</version>

<version>2.4.11</version>

</parent>

 

修改dubbo-dubbo-2.4.11\dubbo-admin\pom.xml

<parent>

         <groupId>com.alibaba</groupId>

         <artifactId>dubbo-parent</artifactId>

         <!--<version>2.4.10</version> 版本号修改为2.4.11 -->

         <version>2.4.11</version>

</parent>

 

修改dubbo-dubbo-2.4.11\pom.xml

<modules>

    <!-- 增加 hessian-lite-->

   <module>hessian-lite</module>

    <!-- 增加 dubbo-admin-->

   <module>dubbo-admin</module>

         <module>dubbo-common</module>

         <module>dubbo-container</module>

         <module>dubbo-remoting</module>

         <module>dubbo-rpc</module>

         <module>dubbo-filter</module>

         <module>dubbo-cluster</module>

         <module>dubbo-registry</module>

         <module>dubbo-monitor</module>

         <module>dubbo-config</module>

         <module>dubbo</module>

</modules>

 

编译

进入dubbo-dubbo-2.4.11目录

set MAVEN_OPTS=-Xmx1024m-XX:MaxPermSize=512m

mvn clean install -Dmaven.test.skip

 

Eclipse支持

mvn eclipse:eclipse

 

进入dubbo-dubbo-2.4.11\dubbo-admin\target目录

上传dubbo-admin-2.4.11.war到/usr/local/ tomcat-7.0.72/webapps/ROOT/

jar -xvf dubbo-admin-2.4.11.war

rm -f dubbo-admin-2.4.11.war

 

启动dubbo

cd /usr/local/tomcat-7.0.72/bin

./startup.sh

 

访问dubbo

http://ip:8080

root/root

 

 

开发dubbo demo

所需lib直接引用dubbo-dubbo-2.4.11\dubbo-admin\target\dubbo-admin-2.4.11\WEB-INF\lib目录下所有即可。


Provider端:

 

Hello.java

package org.leveret.dubbo.demo.provider;

publicinterfaceHello {

   public String sayhello(Stringk);

}

 

HelloImpl.java

package org.leveret.dubbo.demo.provider;

publicclassHelloImplimplementsHello{

   public String sayhello(Stringk) {

      return"hello "+k;

   }

}

 

spring-provider.xml

<?xmlversion="1.0"encoding="UTF-8"?>

<beansxmlns="http://www.springframework.org/schema/beans"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xmlns:dubbo="http://code.alibabatech.com/schema/dubbo"

    xsi:schemaLocation="http://www.springframework.org/schema/beans

       http://www.springframework.org/schema/beans/spring-beans.xsd

       http://code.alibabatech.com/schema/dubbo

       http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> 

   <beanid="hello"class="org.leveret.dubbo.demo.provider.HelloImpl"/> 

   <dubbo:applicationname="leveret_provider" /> 

   <dubbo:registryaddress="zookeeper://cancer02:2181"/>  

   <dubbo:protocolname="dubbo"port="20880"/> 

   <dubbo:serviceinterface="org.leveret.dubbo.demo.provider.Hello"ref="hello"/> 

</beans> 

 

Client.java

package org.leveret.dubbo.demo.provider;

import org.springframework.context.support.ClassPathXmlApplicationContext;

publicclassClient {

   publicstaticvoid main(String[]args) throws Exception {

      ClassPathXmlApplicationContextcontext=newClassPathXmlApplicationContext(new String[] {"spring-provider.xml"}); 

        context.start(); 

        System.in.read();

   }

}

 

 

Consumer端:

 

spring-consumer.xml

<?xmlversion="1.0"encoding="UTF-8"?> 

<beansxmlns="http://www.springframework.org/schema/beans" 

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xmlns:dubbo="http://code.alibabatech.com/schema/dubbo" 

    xsi:schemaLocation="http://www.springframework.org/schema/beans 

       http://www.springframework.org/schema/beans/spring-beans.xsd 

       http://code.alibabatech.com/schema/dubbo 

       http://code.alibabatech.com/schema/dubbo/dubbo.xsd"> 

   <dubbo:applicationname="leveret_consumer"/> 

   <dubbo:registryaddress="zookeeper://cancer02:2181"/> 

   <dubbo:referenceid="hello"interface="org.leveret.dubbo.demo.provider.Hello"/> 

</beans>

 

Client.java

package org.leveret.dubbo.demo.consumer;

import org.leveret.dubbo.demo.provider.Hello;

import org.springframework.context.support.ClassPathXmlApplicationContext;

publicclassClient {

   publicstaticvoid main(String[]args) throws Exception {

      ClassPathXmlApplicationContextcontext=newClassPathXmlApplicationContext(new String[] {"spring-consumer.xml" });

      context.start();

      HellodemoService= (Hello)context.getBean("hello");

      Stringhello=demoService.sayhello("tom");

      System.out.println(hello);

      System.in.read();

   }

}

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值