akka开发(一)HelloWorld
- package com.hfi.helloakka;
- import akka.actor.ActorRef;
- import akka.actor.Props;
- import akka.actor.UntypedActor;
- public class HelloWorld extends UntypedActor {
- @Override
- public void preStart() {
- // create the greeter actor
- final ActorRef greeter =
- getContext().actorOf(Props.create(Greeter.class), "greeter");
- // tell it to perform the greeting
- greeter.tell(Greeter.Msg.GREET, getSelf());
- }
- @Override
- public void onReceive(Object msg) {
- if (msg == Greeter.Msg.DONE) {
- // when the greeter is done, stop this actor and with it the application
- getContext().stop(getSelf());
- } else unhandled(msg);
- }
- }
- package com.hfi.helloakka;
- import akka.actor.UntypedActor;
- public class Greeter extends UntypedActor {
- public static enum Msg {
- GREET, DONE;
- }
- @Override
- public void onReceive(Object msg) {
- if (msg == Msg.GREET) {
- System.out.println("Hello World!");
- getSender().tell(Msg.DONE, getSelf());
- } else unhandled(msg);
- }
- }
pom.xml
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>com.hfi</groupId>
- <artifactId>helloakka</artifactId>
- <packaging>war</packaging>
- <version>0.0.1-SNAPSHOT</version>
- <name>helloakka Maven Webapp</name>
- <url>http://maven.apache.org</url>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>3.8.1</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.scala-lang</groupId>
- <artifactId>scala-library</artifactId>
- <version>2.10.2</version>
- </dependency>
- <dependency>
- <groupId>com.typesafe.akka</groupId>
- <artifactId>akka-actor_2.10</artifactId>
- <version>2.2.5</version>
- </dependency>
- </dependencies>
- <build>
- <finalName>helloakka</finalName>
- </build>
- </project>
可能遇到的问题:
java.lang.NoClassDefFoundError: scala/collection/GenTraversableOnce$class
用的akka包跟依赖的scala包版本不一致导致(貌似scala不向下兼容它的旧版本),笔者一开始用的2.11.7报错,换成pom中的2.10.2后(到akka-2.2.5.zip中看的版本号)程序就跑起来了。 参考了:http://www.jianshu.com/p/59733597d448
akka开发(一)HelloWorld的更多相关文章
- Spring Boot 《一》开发一个“HelloWorld”的 web 应用
一,Spring Boot 介绍 Spring Boot不是一个新的框架,默认配置了多种框架使用方式,使用SpringBoot很容易创建一个独立运行(运行jar,内嵌Servlet).准生产级别的基于 ...
- Node.js开发入门—HelloWorld再分析
在Node.js开发入门(1)我们用http模块实现了一个简单的HelloWorld站点,这次我们再来细致分析下代码.了解很多其它的细节. 先看看http版本号的HelloWorld代码: 代码就是这 ...
- Windows内核驱动开发:HelloWorld
测试信息 Dev Machine: Windows Version: 2004 (19041.264) WDK Version: 10.0.19041.1 SDK Version: 10.0.1904 ...
- Webpack + React 开发 01 HelloWorld
1.项目依赖 安装所需要依赖的其它第三方开源库,项目依赖如下: "dependencies": { "babel-core": "^6.21.0&qu ...
- Android开发新手HelloWorld解析
首先看这个 HelloWorld 类. Java代码public class HelloWorld extends Activity { /** Called when the activ ...
- Android jni简便开发流程
<Android jni helloworld>中介绍了开发jni helloworld的步骤,本文将介绍jni简便开发流程 ① 写java代码 native 声明本地方法 ② 添加本地支 ...
- Android 开发第二天
开发入门HelloWorld 首先打开开发工具 第一步 第二步 效果图 以后可以点击一直下去 第三步骤介绍一下里面项目的作用 SRC是用来保存源代码的东西MainAcrivity.java主视图res ...
- Intellij IDEA + Android SDK + Genymotion Emulator打造最佳Android开发
原文:Intellij IDEA + Android SDK + Genymotion Emulator打造最佳Android开发 Intellij IDEA + Android SDK + Geny ...
- Visual Studio跨平台开发实战(1) - Hello Xamarin!
原文 Visual Studio跨平台开发实战(1) - Hello Xamarin! 前言 应用程式发展的脚步, 从来没有停过. 从早期的Windows 应用程式, 到网路时代的web 应用程式, ...
随机推荐
- [leetcode]632. Smallest Range最小范围
You have k lists of sorted integers in ascending order. Find the smallest range that includes at lea ...
- php 使用html5 XHR2 上传文件 进度显示
思路:只要我们知道上传文件的总大小,还有上传过程中上传文件的大小,那么就可以实现进度显示了. 在html5中,XMLHttpRequest对象,传送数据的时候,progress事件用来返回进度信息. ...
- Castle ActiveRecord学习(三)数据映射及特性描述
Model中的Demo: using Castle.ActiveRecord; using Castle.ActiveRecord.Queries; using System; using Syste ...
- 证书吊销列表(CRL)介绍
一.证书吊销列表(CRL) 证书吊销列表 (Certificate Revocation List ,简称: CRL) 是 PKI 系统中的一个结构化数据文件,该文件包含了证书颁发机构 (CA) 已经 ...
- ffmpeg 入门教程
1.在terminal,安装ffmpeg开源库 #brew install ffmpeg 2.新建一个目录first_ffmpeg,并在first_ffmpeg目录下新建ffmpeg目录 3.拷贝/u ...
- 老板说你的UI设计的不高级?你肯定没用这7个技巧...
对于每个网页设计师而言,在设计过程中总会碰到需要作出设计决策的时候.也许你的公司并没有全职设计师,而需求上则要求设计出全新的UI:又或者你正在制作一个你自己的个人项目,而你希望它比 Bootstrap ...
- 用 npm 安装删除模块
npm安装模块 [npm install xxx]利用 npm 安装xxx模块到当前命令行所在目录: [npm install -g xxx]利用npm安装全局模块xxx: 本地安装时将模块写入pac ...
- 设计神器 - 摹客设计系统上线了 | 晒出你的设计规范,赢iPad Pro!
在国内,设计规范也许还是个不太常用的概念,但是如果你正好有参与互联网公司的产品设计,你应该早就已经体会到设计规范的重要性了.UI设计师总是要花费大量的时间和精力向开发描述一大堆设计细节,但是产品最后呈 ...
- stl学习记录(2)
#include <iostream> #include <utility> #include <tuple> #include <complex> # ...
- 记unit of work与事务提交
https://docs.microsoft.com/en-us/aspnet/mvc/overview/older-versions/getting-started-with-ef-5-using- ...