小薇聊天机器人用 MyEclipse 部署上线 SOP 教程

本贴最后更新于 2803 天前,其中的信息可能已经渤澥桑田

#背景
近期把 D(丁亮)上线的小薇聊天机器人玩 HIGH 了。由于 D 写的文档还没有特别详细,因此本着开放、自由的分享的精神,在此就用 SOP 的方式,给小白们普及一下小薇是如何一步步部署上线。
#SOP
##一、下载小薇源代码
1.首先登录“黑客派”论坛 https://hacpai.com/
2.找到 D 的帖子(D 的头像是路飞,很好认),点击路飞的头像
QQ 截图 20160729232728.png
3.找到小薇的帖子
QQ 截图 20160729232937.png
4.点击“ XiaoV ”的链接,定位到 GitHub
QQ 截图 20160729233037.png
5.在 D 的 GitHub 上 ,点击 Clone or download 这个按钮
QQ 截图 20160729233224.png
6.点击 Download ZIP 这个按钮
QQ 截图 20160729233409.png
##二、导入小薇的工程文件
7.把 xiaov_master 压缩包解压到你的 MyEclipse 工程目录下
QQ 截图 20160729234012.png
8.然后打开 MyEclipse
(什么?你没有 MyEclipse ?那么再见!)
QQ 截图 20160729234347.png
9.在 MyEclipse 中的 File 菜单中点击 Import
未标题-1.jpg
10.在 Import 选项卡的 Select an import source 中输入 maven ,并选择 Exisiting Maven Projects
QQ 截图 20160729235019.png
11.在下一步操作中,点击 Browse... 按钮,将目录定位到 JAVA 工程中的 xiao-master 上并点击 Next 按钮
QQ 截图 20160729235333.png
12.看到这个画面后直接点击 Finish
QQ 截图 20160729235526.png
13.然后你会看到右小角的滚动条在跑呀跑,等等吧亲!去泡杯茶,或者喝杯咖啡。
QQ 截图 20160729235701.png
14.跑完后,你会发现,小薇的工程目录前面有个感叹号,一定是哪里出了问题
QQ 截图 20160729235948.png
15.右键点击这个工程,选择 Build Path -> Configure Build Path...
QQ 截图 20160730000124.png
##三、安装 JDK1.7 环境
16.可以看到原来是没有 jdk1.7 ,别急,点这里下载,密码:k4ms
QQ 截图 20160730000349.png
17.装一下 jdk1.7 ,很快的哈
QQ 截图 20160730000935.png
18.装好了,那么我们再回到 Build Path -> Configure Build Path... ,点击 Libraries 选项卡,再点击 Edit...
QQ 截图 20160730001114.png
19.选择 Alternate JRE ,再点击 Installed JREs...
QQ 截图 20160730001236.png
20.点击 Add...
QQ 截图 20160730001348.png
21.选择 Standard VM ,点击 Next
QQ 截图 20160730001438.png
22.将 Directory... 定位到刚才 jdk1.7 的安装目录下,再点击 Finish
QQ 截图 20160730001603.png
23.回到前一个对话框,选择 jdk1.7 ,点击 OK
QQ 截图 20160730001800.png
24.再回到前一个对话框,点击 Execution environment (这时可以看到已经有 jdk1.7 的环境了),再点击 Finish 按钮,OK
QQ 截图 20160730001913.png
##三、部署小薇服务
25.这时候可以看到,小薇的工程已经没有报错了
QQ 截图 20160730002107.png
26.为了确保小薇依赖的包都准确无误,我们可以在工程目录上点击右键,然后 Run As -> Maven install
QQ 截图 20160730002438.png
27.可以看到 Maven 在控制台输出了 BUILD SUCCESS 的信息,OK
QQ 截图 20160730002655.png
28.接下来,我们要把小薇部署到 Tomcat 上,点击 MyEclipse 上的 Deploy 按钮,在弹出的对话框中点击 Add 按钮
PS:D 用的是 Jetty,但我还是比较习惯用 Tomcat 呵
QQ 截图 20160730002849.png
29.选择 MyEclipse Tomcat ,点击 Finish
QQ 截图 20160730003122.png
30.回到上一个对话框,可以看到 Successfully deployed. 的提示,点击 OK
QQ 截图 20160730003258.png
##四、运行小薇服务
31.接下来,点击 MyEclipse 上服务器按钮旁边的小三角形,选择 MyEclipse Tomcat -> Start
QQ 截图 20160730003453.png
32.可以看到,控制台中输出了小薇启动的信息
QQ 截图 20160730003645.png
33.找到控制台告诉你的二维码所在的目录,打开,用手机 QQ 扫它吧
QQ 截图 20160730003829.png
34.这时候,你看到了控制台输出了一堆错误信息
QQ 截图 20160730004120.png
35.别着急,根据提示,我们打开 w.qq.com,先扫扫看吧
QQ 截图 20160730004002.png
36.可以正常登录网页版 QQ,那么,退出吧!
QQ 截图 20160730004533.png
37.再回到 MyEclipse ,把服务跑起来!这时候发现小薇已经可以读取到 QQ 群号了
QQ 截图 20160730004737.png
38.什么?还是有出错信息?
QQ 截图 20160730004907.png
##五、开始调戏小薇
39.安啦!这是正常的,只要有人敢在群里叫小薇,她就会开始瞎扯淡啦!不信你看!
QQ 截图 20160730005141.png
40.同时你也可以打开小薇的 QQ,看她实时的扯淡能力啦,QQ 的界面我就不截图了
PS:你眼神很犀利,看到了 1202 的返回错误码,这个是因为我的小薇被人禁言了- -!!
最后,如果需要修改小薇的名称,可以在工程中的 resources 目录下,找到 xiaov.properties ,打开后修改 qq.bot.name 的值,这个就是小薇的名称啦!
QQ 截图 20160730005418.png
##六、写在最后
最后的最后,请大家一定要尊重 D 的劳动成果,小薇有一个随机函数,偶尔会发一下“黑客派”论坛的广告,请大家务必不要屏蔽!

现在就去访问黑客派论坛!

--END--

  • 黑客派

    黑客派是 B3log 开源社区的线上论坛,这里主要汇聚了程序员和设计师。HacPai 分别取 Hacker / Painter 的头三个字母组成,源自《黑客与画家》。

    358 引用 • 4754 回帖 • 510 关注
  • 小薇

    小薇是一个用 Java 写的 QQ 聊天机器人 Web 服务,可以用于社群互动。

    由于 Smart QQ 从 2019 年 1 月 1 日起停止服务,所以该项目也已经停止维护了!

    34 引用 • 467 回帖 • 696 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3169 引用 • 8207 回帖

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • 88250

    这个文件从你本地 mvn 仓库删了重新构建就行

    1 回复
  • 其他回帖
  • donychen

    9.2.7.v20150116 这个文件夹我都删了好几回了,然后 Maven install 之后就又下好了,最后就失败了。

  • donychen

    [ERROR] COMPILATION ERROR :
    [INFO] -------------------------------------------------------------
    [ERROR] 读取 C:\Users\A.m2\repository\com\alibaba\fastjson\1.2.7\fastjson-1.2.7.jar 时出错; invalid CEN header (bad signature)
    [ERROR] /E:/MyWorkSpace/MyEclipse 10/xiaov-master/src/main/java/com/scienjus/smartqq/client/SmartQQClient.java:[365,20] 无法访问 com.alibaba.fastjson.TypeReference
    错误的类文件: C:\Users\A.m2\repository\com\alibaba\fastjson\1.2.7\fastjson-1.2.7.jar(com/alibaba/fastjson/TypeReference.class)
    无法访问文件: corrupted zip file
    请删除该文件或确保该文件位于正确的类路径子目录中。
    好无奈。。。

    1 回复
  • someone

    各种错误
    八月 25, 2016 12:21:15 下午 org.apache.catalina.core.ContainerBase addChildInternal
    严重: ContainerBase.addChild: start:
    org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/xiaovvv]]

  • 查看全部回帖
relyn
永远相信美好的事情即将发生 福州

推荐标签 标签

  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    75 引用 • 258 回帖 • 629 关注
  • Ngui

    Ngui 是一个 GUI 的排版显示引擎和跨平台的 GUI 应用程序开发框架,基于
    Node.js / OpenGL。目标是在此基础上开发 GUI 应用程序可拥有开发 WEB 应用般简单与速度同时兼顾 Native 应用程序的性能与体验。

    7 引用 • 9 回帖 • 343 关注
  • 前端

    前端技术一般分为前端设计和前端开发,前端设计可以理解为网站的视觉设计,前端开发则是网站的前台代码实现,包括 HTML、CSS 以及 JavaScript 等。

    247 引用 • 1347 回帖 • 1 关注
  • JRebel

    JRebel 是一款 Java 虚拟机插件,它使得 Java 程序员能在不进行重部署的情况下,即时看到代码的改变对一个应用程序带来的影响。

    26 引用 • 78 回帖 • 623 关注
  • 支付宝

    支付宝是全球领先的独立第三方支付平台,致力于为广大用户提供安全快速的电子支付/网上支付/安全支付/手机支付体验,及转账收款/水电煤缴费/信用卡还款/AA 收款等生活服务应用。

    29 引用 • 347 回帖 • 2 关注
  • Linux

    Linux 是一套免费使用和自由传播的类 Unix 操作系统,是一个基于 POSIX 和 Unix 的多用户、多任务、支持多线程和多 CPU 的操作系统。它能运行主要的 Unix 工具软件、应用程序和网络协议,并支持 32 位和 64 位硬件。Linux 继承了 Unix 以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

    918 引用 • 931 回帖
  • Telegram

    Telegram 是一个非盈利性、基于云端的即时消息服务。它提供了支持各大操作系统平台的开源的客户端,也提供了很多强大的 APIs 给开发者创建自己的客户端和机器人。

    5 引用 • 35 回帖
  • Scala

    Scala 是一门多范式的编程语言,集成面向对象编程和函数式编程的各种特性。

    13 引用 • 11 回帖 • 110 关注
  • Flume

    Flume 是一套分布式的、可靠的,可用于有效地收集、聚合和搬运大量日志数据的服务架构。

    9 引用 • 6 回帖 • 601 关注
  • 外包

    有空闲时间是接外包好呢还是学习好呢?

    26 引用 • 232 回帖 • 9 关注
  • frp

    frp 是一个可用于内网穿透的高性能的反向代理应用,支持 TCP、UDP、 HTTP 和 HTTPS 协议。

    15 引用 • 7 回帖 • 2 关注
  • 思源笔记

    思源笔记是一款隐私优先的个人知识管理系统,支持完全离线使用,同时也支持端到端加密同步。

    融合块、大纲和双向链接,重构你的思维。

    19111 引用 • 71853 回帖
  • RabbitMQ

    RabbitMQ 是一个开源的 AMQP 实现,服务器端用 Erlang 语言编写,支持多种语言客户端,如:Python、Ruby、.NET、Java、C、PHP、ActionScript 等。用于在分布式系统中存储转发消息,在易用性、扩展性、高可用性等方面表现不俗。

    49 引用 • 60 回帖 • 394 关注
  • Maven

    Maven 是基于项目对象模型(POM)、通过一小段描述信息来管理项目的构建、报告和文档的软件项目管理工具。

    186 引用 • 318 回帖 • 340 关注
  • Shell

    Shell 脚本与 Windows/Dos 下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,主要是方便管理员进行设置或者管理用的。但是它比 Windows 下的批处理更强大,比用其他编程程序编辑的程序效率更高,因为它使用了 Linux/Unix 下的命令。

    122 引用 • 73 回帖 • 1 关注
  • 旅游

    希望你我能在旅途中找到人生的下一站。

    85 引用 • 895 回帖
  • Facebook

    Facebook 是一个联系朋友的社交工具。大家可以通过它和朋友、同事、同学以及周围的人保持互动交流,分享无限上传的图片,发布链接和视频,更可以增进对朋友的了解。

    4 引用 • 15 回帖 • 455 关注
  • 京东

    京东是中国最大的自营式电商企业,2015 年第一季度在中国自营式 B2C 电商市场的占有率为 56.3%。2014 年 5 月,京东在美国纳斯达克证券交易所正式挂牌上市(股票代码:JD),是中国第一个成功赴美上市的大型综合型电商平台,与腾讯、百度等中国互联网巨头共同跻身全球前十大互联网公司排行榜。

    14 引用 • 102 回帖 • 405 关注
  • SVN

    SVN 是 Subversion 的简称,是一个开放源代码的版本控制系统,相较于 RCS、CVS,它采用了分支管理系统,它的设计目标就是取代 CVS。

    29 引用 • 98 回帖 • 696 关注
  • JavaScript

    JavaScript 一种动态类型、弱类型、基于原型的直译式脚本语言,内置支持类型。它的解释器被称为 JavaScript 引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在 HTML 网页上使用,用来给 HTML 网页增加动态功能。

    711 引用 • 1173 回帖 • 154 关注
  • Love2D

    Love2D 是一个开源的, 跨平台的 2D 游戏引擎。使用纯 Lua 脚本来进行游戏开发。目前支持的平台有 Windows, Mac OS X, Linux, Android 和 iOS。

    14 引用 • 53 回帖 • 513 关注
  • 创造

    你创造的作品可能会帮助到很多人,如果是开源项目的话就更赞了!

    174 引用 • 990 回帖
  • Swagger

    Swagger 是一款非常流行的 API 开发工具,它遵循 OpenAPI Specification(这是一种通用的、和编程语言无关的 API 描述规范)。Swagger 贯穿整个 API 生命周期,如 API 的设计、编写文档、测试和部署。

    26 引用 • 35 回帖 • 12 关注
  • Thymeleaf

    Thymeleaf 是一款用于渲染 XML/XHTML/HTML5 内容的模板引擎。类似 Velocity、 FreeMarker 等,它也可以轻易的与 Spring 等 Web 框架进行集成作为 Web 应用的模板引擎。与其它模板引擎相比,Thymeleaf 最大的特点是能够直接在浏览器中打开并正确显示模板页面,而不需要启动整个 Web 应用。

    11 引用 • 19 回帖 • 319 关注
  • 分享

    有什么新发现就分享给大家吧!

    242 引用 • 1746 回帖
  • OkHttp

    OkHttp 是一款 HTTP & HTTP/2 客户端库,专为 Android 和 Java 应用打造。

    16 引用 • 6 回帖 • 52 关注
  • 30Seconds

    📙 前端知识精选集,包含 HTML、CSS、JavaScript、React、Node、安全等方面,每天仅需 30 秒。

    • 精选常见面试题,帮助您准备下一次面试
    • 精选常见交互,帮助您拥有简洁酷炫的站点
    • 精选有用的 React 片段,帮助你获取最佳实践
    • 精选常见代码集,帮助您提高打码效率
    • 整理前端界的最新资讯,邀您一同探索新世界
    488 引用 • 383 回帖 • 2 关注