|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' @$ T( Z" b8 n. ^* C
: _, ^; H8 _. B0 d/ {# s) @1 J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# v4 j! U* A3 n2 ` z2 v以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& Q6 J, W4 Z7 N; w
swarm.SignatureNotFoundException. G- ~% M% [* x# W
at swarm.Selector.<init>(Selector.java:76)
( L6 i e! B5 Y( b1 |; Y. l9 U. l at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, t' D1 t1 k3 s3 y) `+ N% h3 m% l at ActionGroupDemo.main(ActionGroupDemo.java:67) @" M% H3 g$ G/ \4 d7 j i
1 V/ t; |$ `1 s7 n6 c& i( @7 c, u, K* Y% s$ A, P+ T7 z
import swarm.objectbase.SwarmImpl;
5 Q6 O5 M9 M# o- a1 x, U( Uimport swarm.objectbase.Swarm;$ }8 B6 N1 J7 ] B6 W% m, Q# b
import swarm.activity.ScheduleImpl;3 i; t( r* T! ]- P& U
import swarm.activity.Activity;
2 @+ L8 g9 R6 ^5 t: yimport swarm.activity.ActionGroupImpl;
! M9 K' e9 Q7 u4 nimport swarm.collections.ListImpl;
; v: b: G0 R" C& W4 gimport swarm.defobj.Zone; ) }% r: S b3 r3 d2 n5 A6 B# I
import swarm.Globals;7 r& R2 G3 F. Y4 `7 z
import swarm.Selector;" F4 {2 H- S/ [9 z; B& V
import swarm.activity.ActionGroup; # F. g, |3 Q/ b
class Agent {# h( ~1 I9 ~+ Y
char id; P5 f; z$ i' K6 T- L
# o4 X, H5 ]& ^9 Q1 p; ~0 H Agent(char id) {# x/ ^! t! j+ I$ V2 b7 ~* h
this.id = id;
$ C3 m* y) h$ ?% z" n5 m$ ]" a7 C: H }& R0 }+ J g5 W& p1 ?# `0 ^
3 e+ z. c! f( s6 h/ S% @- S/ t
public void agentStep() {6 b* c8 B9 E" Q% w
System.out.println(id + ":" + Globals.env.getCurrentTime());
6 s) w3 ]& \/ n" E3 {$ W }
7 ?' s' d @7 t! L v}
" v4 @6 |0 V$ m0 n4 ` ?0 C/ ^( O& U/ ^' t# V
public class ActionGroupDemo extends SwarmImpl {
# O: x; r2 A( |0 U g( G ScheduleImpl schedule;% {6 T1 j0 e6 Y3 S5 c; w5 D
ActionGroupImpl actionGroup;' {; n5 J2 F0 w3 B( g
ListImpl list;+ r9 v. C; s3 ~/ G d
char Id = 'a';& ~; u" K" \$ {- X6 L
4 O5 M ?& m+ C+ o1 F" o) \ ActionGroupDemo(Zone aZone) {9 ~$ g' K6 W4 A' a# S
super(aZone);
$ T5 \7 v/ N7 I/ N* y+ b list = new ListImpl(aZone);
; D+ v+ _) |1 d$ J' k$ J swarmSetp();' E/ o% f' g( f+ r- X& U
actionGroup = new ActionGroupImpl(aZone);
$ B6 [3 K6 f; `8 ? schedule = new ScheduleImpl(aZone);
0 [. F" Z, y! T try {
/ m1 J. W+ q U* b5 o$ Q Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 i! \, v% D7 m, u( I" T Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ d4 `# D0 E+ x( t
7 s; Y& c k8 i( g6 S* ^ @# u. x actionGroup.createActionForEach$message(list, agentSel);' g3 k' Z% J& k0 L- r% i
actionGroup.createActionTo$message(this, swarmSel);
+ P2 \2 {# ^ M+ Z2 X' g7 [) @. } schedule.at$createAction(0, actionGroup);
" M# Q$ V z# @$ w: a7 |1 Q7 v- T schedule.at$createAction(1, actionGroup);: e& K: v' S2 b4 m
schedule.at$createAction(2, actionGroup);* l. I) L' M9 _* I E0 J
% t: L3 _5 W2 d& K: J; U/ d- N% t- _
} catch (Exception e) {
/ M% @! g6 {3 d; f e.printStackTrace(System.err);& c: a4 h! t2 r1 L7 W
//System.out.println(e);, B! ~6 W, N" s$ U6 E9 i
System.exit(1);
5 o* Y) E7 [9 J. _ }* H$ |" ~6 f+ q0 m/ {3 G
% J# X7 v# C, H+ C# f @8 ^
" O2 e2 n/ Z7 Z! ~$ g4 k
}/ Y8 }/ u6 E4 E
$ q3 y* S: T2 L. J' w+ S: T) D8 o
private void swarmSetp() {
. r- `8 z9 J; U9 ^2 l! J, { list.addLast(new Agent(Id));
/ u7 s) y$ B# R* s2 ^# o3 O% B1 q7 [9 a Id++;
! ~) d# `, b7 B }
# b6 m+ a: t) S7 W) Q+ `4 U! n; f4 T9 [5 d) h [4 i
public Activity activateIn(Swarm context) {! ?+ {# {3 N. i8 A
super.activateIn(context);
: D( Z1 p: S% G, @( z schedule.activateIn(this);
& P% y2 v* P6 F return getActivity();6 M& V v& D' W: e3 q# Z$ [, N
}
8 y" Q$ f8 [7 w+ k2 N% K# |1 ?* O, J5 Z- Y9 |
public static void main(String[] args) {- K( A5 M! I2 _/ k! n$ y/ O4 w
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 K1 |3 J- L$ |6 ~( e: v) }; A Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- S1 L2 ?4 Y2 }- i, y swarms.buildObjects();
9 z1 M5 w! d5 R* f# v swarms.buildActions();
5 Y% R9 g& D% R) S6 ^$ E" }" o swarms.activateIn(null).run();
9 ^8 k8 y: `% t1 d. x( ?* Y }( |, X3 P" G1 ?3 h
5 B( [% x* w* D* `7 E# F- t
} |
|