|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! y5 c1 s6 a% W; U( w! e
! f( c9 {8 Q0 C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: X( h( v* s* m6 B: u, A7 ]* x以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) n6 i( c X% s# ~! Q$ pswarm.SignatureNotFoundException
2 b, ~) Q1 I; q' s) K: s at swarm.Selector.<init>(Selector.java:76)
|( \' v0 k1 t8 E) W at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 }% O: x- e7 e
at ActionGroupDemo.main(ActionGroupDemo.java:67)
# ?: C$ w* [4 J/ A) p6 c- u# M* c% X7 ?: X4 @ P7 Q1 O7 y
6 l0 b$ S o& s! |0 P' {
import swarm.objectbase.SwarmImpl;
5 O2 S! N' e4 \! A* z$ D: Ximport swarm.objectbase.Swarm;% l \0 ?, f) c" t$ e* s5 t; f
import swarm.activity.ScheduleImpl;
! M. Y, P2 y' Y3 L6 g, oimport swarm.activity.Activity;
# W5 G/ d5 {, i3 j# }. Qimport swarm.activity.ActionGroupImpl;+ ~- {& e/ e: t, x1 q$ a' B
import swarm.collections.ListImpl;+ N( t: {9 ~" N% H v; B
import swarm.defobj.Zone; 1 o0 _! G; j6 C- ~6 B7 [! i
import swarm.Globals;
; b5 W( s( d8 _: ?2 W: simport swarm.Selector;: i2 j+ y5 C) h
import swarm.activity.ActionGroup; 9 o# K3 O2 N* q) u
class Agent {3 E! c& T$ j! b! ~9 k
char id;
4 m# t* t, E/ i$ A# L6 M4 n* P/ _# q) Y4 I& _6 Q
Agent(char id) {
) s) _ C& k. D) c6 k) b9 Z this.id = id;% x( m" a$ q* [ G8 F4 l+ u
}3 u3 z; w' N5 A% l" K
0 i4 C5 Y0 V8 D$ S5 b) M public void agentStep() {! x4 |% r J6 O5 ]7 B" ~/ g
System.out.println(id + ":" + Globals.env.getCurrentTime());$ O% q8 Q6 T5 m; v8 H2 Q8 T
}
0 {/ z- a$ G" v# W \, M+ [}
8 ], u: r% J5 @: m8 o. W* k7 P, N- {! z4 K" q
public class ActionGroupDemo extends SwarmImpl {' x* ?" o) L# d F
ScheduleImpl schedule;
/ ~. E2 d$ a/ Q. h7 A ActionGroupImpl actionGroup;- c$ v" s, y6 [, d
ListImpl list;
) a3 |* ]+ G$ D$ q$ j char Id = 'a';
# v( F& c3 `2 X+ x
1 I; N8 F9 [8 s' A: M3 M ActionGroupDemo(Zone aZone) {* N, S% J0 S/ P- L
super(aZone);
5 \& ~" M0 Q6 X0 x3 g% o0 T list = new ListImpl(aZone);6 U9 }4 E6 k, ~4 l
swarmSetp();9 L8 ]1 i7 X; t! m
actionGroup = new ActionGroupImpl(aZone);
. s0 C3 i ?$ f; J6 L schedule = new ScheduleImpl(aZone);5 V0 o/ ]0 h4 z
try {
3 v) d4 |4 c! S7 n& q2 t4 X Selector agentSel = new Selector(Agent.class, "agentStep", false);
: P& `( r _3 E9 e9 X% z( K J Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 X% c' V3 u: Q5 O/ c# L6 T) H6 Y
. M# _4 J4 C a# I9 j- H3 N# t
actionGroup.createActionForEach$message(list, agentSel);
% c$ k% T, O9 d' B/ G3 N6 t; ? actionGroup.createActionTo$message(this, swarmSel);( H6 j9 T& M0 r3 h+ s/ P
schedule.at$createAction(0, actionGroup);
. `/ T5 z1 {; q" y. M5 g schedule.at$createAction(1, actionGroup);
; Y+ X" ?4 c& u3 P0 } schedule.at$createAction(2, actionGroup);: g7 V5 X/ K2 n& y" |- H
. U3 ^7 x# J* y& M) o
} catch (Exception e) {
2 K# Y: u5 m: a' R0 ]' }3 W e.printStackTrace(System.err);" C9 ^- R2 |. k! |2 G" Q5 ^
//System.out.println(e);( V7 \9 S- b$ a- u
System.exit(1);" j0 q3 F: @% W4 Q% y4 L8 z. S
}# b0 l: e: \9 Y
) a3 w+ @( @, S& K7 b% [2 G+ V. k$ B3 o) K8 T9 `
}
3 K' q+ L1 u% v
* [! R, ] p3 X) W2 V: J V% q private void swarmSetp() {0 e. _; Y8 P6 d& B" E' z3 G4 n4 W
list.addLast(new Agent(Id));) k: n! v3 y3 V3 f
Id++;
k- }: ]4 l: g }
) Z; Y$ ^. C# Q6 V" o: V* u1 Y+ \; r3 d
public Activity activateIn(Swarm context) {3 f- U( w7 R. z7 [' N+ E
super.activateIn(context);9 V5 w$ Y4 C: p+ q9 t
schedule.activateIn(this);% y3 `9 h0 X: ~) @
return getActivity();
# K' E$ ^1 Q2 \+ A# W }
9 `- L4 c5 l* D+ {% x: O* F- w5 O6 P
public static void main(String[] args) {. e, {5 N/ } w5 p
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 w E z0 \! w
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 O3 D, L- G4 T) _ swarms.buildObjects();
6 Y3 {4 G8 X6 b" `; ~ swarms.buildActions();
- ?4 I5 w5 |8 N, m( B! H0 K1 ]" J swarms.activateIn(null).run();6 M4 o7 u9 m4 {/ y6 B
}/ p7 `( \1 T/ U0 f
1 t N( y+ H. G7 e# l
} |
|