|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' {2 Y' H6 h+ J# m: Y9 X( S! O+ b! o& u
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 _. V4 f3 [4 f T: ]8 z' w4 @
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* g1 l; j6 ?$ c0 p% _7 F* D
swarm.SignatureNotFoundException4 w5 F+ F W5 N
at swarm.Selector.<init>(Selector.java:76)
* f7 Z" P% e. }" O. O- O Z/ X5 F# U at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% c* [- `- Z( Q4 z& n
at ActionGroupDemo.main(ActionGroupDemo.java:67)
; L- C% V4 Z# v7 u7 D. U; U; t1 u
$ G* V# M; X- j! L) J! N: X. P
$ r& U& _; n3 x" }& u$ ~3 L3 Dimport swarm.objectbase.SwarmImpl;( ^- g* h8 V4 V9 d
import swarm.objectbase.Swarm;0 Y+ [, g5 S" q2 a( i# H( r+ _
import swarm.activity.ScheduleImpl;* t+ E( O# X* x4 U
import swarm.activity.Activity;, I3 _2 h5 o0 ?" E
import swarm.activity.ActionGroupImpl;' ?1 v7 Y+ w- ]
import swarm.collections.ListImpl;
! {0 f; |' E/ ^, u$ M6 i9 `$ mimport swarm.defobj.Zone; " x. ~. [' n% F6 t
import swarm.Globals;4 _$ M" q0 l5 `. C7 b: ~ Q
import swarm.Selector;5 B# r' v: Q9 g7 g, e* |
import swarm.activity.ActionGroup;
% n H; G. f) |/ D$ W) Bclass Agent {
, B6 d7 t/ u3 D1 @7 q0 c6 Q2 c char id;
7 I8 b& \7 y( P
- F0 X1 f. L' {# P. }. U Agent(char id) {5 I: u+ O# R" Q K$ ^7 |' t
this.id = id;
3 e j& M* S' p5 m% I }
. b& v% k' }0 F* e- p! r7 A* \" Y
public void agentStep() {
$ x8 Z& F# g8 F7 U3 s! f5 c, D$ ` System.out.println(id + ":" + Globals.env.getCurrentTime());' T; H8 l# ^7 F, S) f/ U( g
}% W$ b6 _- G7 m2 A. D. ]
}
0 ], A& ^# P+ H# F( U3 K% U6 _1 [2 ?& ^4 H# I& }1 V
public class ActionGroupDemo extends SwarmImpl {
* c4 l* p9 O& N& X: l8 E ScheduleImpl schedule;$ \) r( f# N3 n) ?5 k* }9 f
ActionGroupImpl actionGroup;6 M- k/ \' U# I$ w! l) C6 q
ListImpl list;4 V# g) J* l4 ?7 c4 P
char Id = 'a';$ ^0 G" Z6 F8 @% x/ }
& e# ~ I. p7 j9 V/ W ActionGroupDemo(Zone aZone) {6 s5 k. ?" A, G4 E/ \ j; Y
super(aZone);
/ M3 u/ B* H. _7 } list = new ListImpl(aZone);
# ~) T6 `, R: {/ I/ H: ` swarmSetp(); `' v5 i0 A; J
actionGroup = new ActionGroupImpl(aZone);- V5 N" r9 b# p: ?' A1 C+ X
schedule = new ScheduleImpl(aZone);
9 U: F' z4 w: ?, Y8 {. l1 ^: {* l try {
) d# P" X, F) Q& E! r- D Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ v) K' q4 G' r Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; N; g: n' L! E
( Y, G+ @( c! w# \& m( Z+ I7 _& a3 E
actionGroup.createActionForEach$message(list, agentSel);: v) `* ]) j9 Q+ ?4 |0 @- S# {
actionGroup.createActionTo$message(this, swarmSel);4 [' _1 Y$ W9 x1 y! B' A
schedule.at$createAction(0, actionGroup);1 W" [6 v4 o8 D; T
schedule.at$createAction(1, actionGroup);6 X( P) X, ^( R9 e( r
schedule.at$createAction(2, actionGroup);$ j6 S. R& \7 y: ^" D
* c, X% ~7 E/ q% y$ ]- m3 B- K9 } } catch (Exception e) {
( z% V0 ^2 w; V. x O e.printStackTrace(System.err);
1 e2 M& w, R& T //System.out.println(e);4 R& V& z5 X" W3 h! |& } m
System.exit(1);
+ r' b/ H+ O5 Z# Z0 X }5 N! e2 Z" u) E5 x
3 H! E( t- ?; k1 `* E, l) T6 P' C9 K
}
/ F& w1 c$ z2 e0 N$ {
$ I/ r1 V0 O# b; M private void swarmSetp() {
6 v# N" S7 U2 L9 o list.addLast(new Agent(Id));! n' R1 Z( T p1 u
Id++;
* \8 I, C8 }9 c* B1 z$ N3 i# y# S& n }! v- \6 Y' y6 h% ]
! _5 a8 a+ h6 i- N, F
public Activity activateIn(Swarm context) {
' x: v' r, S/ @! Z super.activateIn(context);5 V" p5 R4 @7 {% a1 t
schedule.activateIn(this);* Y' |# J: I% i) O" g. E, M7 a
return getActivity();
- r% m: _% S: |4 a& K1 X$ b }
$ R. t0 P8 u! b& T& k- Q4 y
% T& Y6 g# k7 x2 s0 A2 y- Z public static void main(String[] args) {- X5 C4 F8 J, g" k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
- y7 V) n5 }$ p/ o- ?$ } Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ H, R# ~. o* }) q7 e
swarms.buildObjects();
4 o. N& ]- ]9 V! n6 f' G swarms.buildActions();
$ z9 A, P7 z- c0 D) |( M5 r swarms.activateIn(null).run();9 Z" y( \5 L3 W* _5 V1 C
}5 H) @4 d3 b- a8 r
1 ^, Y: C5 e9 [% X} |
|