|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' o, D. F8 V5 r2 a* A8 b5 e8 N, r
7 p$ d2 g" c& `9 G7 t/ e3 X本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update219 q7 J& T6 W/ ] V1 J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
i! a2 E* T6 e- w5 \1 jswarm.SignatureNotFoundException M4 w1 X1 I: [% Z
at swarm.Selector.<init>(Selector.java:76)4 m! u: q- c: I. y
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% m. z' j/ V6 H3 v: y. x3 G at ActionGroupDemo.main(ActionGroupDemo.java:67)& w8 o% I0 A( ^+ J, Q
; R. S( C3 |; N
; M) s% x4 n7 r. z: H4 t# r, Timport swarm.objectbase.SwarmImpl;" u: I4 Z2 a; a' T% }/ p" b0 p# H
import swarm.objectbase.Swarm;" c4 k" ] g0 o5 ~: K& Q' R0 q
import swarm.activity.ScheduleImpl;
$ i. w* v8 P; L4 T% Wimport swarm.activity.Activity;- ^" o; D) g$ B8 B
import swarm.activity.ActionGroupImpl;9 W5 g: O0 d/ r" y J3 i
import swarm.collections.ListImpl;# ~7 Z. Q1 }. K% U; v
import swarm.defobj.Zone;
( H5 [" \$ F0 D1 c+ s( kimport swarm.Globals;% g A, D$ }: N/ K+ D
import swarm.Selector;2 l. ~. A0 E9 j/ w& }. e6 e
import swarm.activity.ActionGroup; . x7 L. w" K! k( F9 n+ w
class Agent {
3 u' x* R* b Y( d, x. X6 b char id;
# V3 S+ R4 ~/ g4 d) z) h* q
* [: X8 T9 r/ ~9 I Agent(char id) {- v' y" z0 h0 P( }
this.id = id;0 Q& l$ U& A3 W2 f. J3 @: i7 C5 a
}4 Z: ]! m/ r5 m$ X g9 E
3 J$ g2 @- i% F6 v, p0 _. d
public void agentStep() {
+ i9 z; v% {* N System.out.println(id + ":" + Globals.env.getCurrentTime());
9 x$ d% Q- K6 d }
& ~8 P, O7 G" k}
( @3 R: j7 v+ n- D6 \* G9 K2 t- W' g+ P* P
public class ActionGroupDemo extends SwarmImpl {, S4 z( x3 `* N8 P3 e+ ^, w
ScheduleImpl schedule;
1 p# C1 u& H. j ActionGroupImpl actionGroup;/ R; `$ d* k( [0 m
ListImpl list;
5 o' c5 t% n) w- T/ F) F char Id = 'a';
; }% Q M$ o( N! p" Y8 b6 Q0 g Q* O7 s( y
7 Z; V7 b; G. S; z6 f ActionGroupDemo(Zone aZone) {6 s( N0 h7 N- K/ F: w) c
super(aZone);
; Q$ E: z# m [2 f: m1 H4 G list = new ListImpl(aZone);
2 F9 E) A* g E4 z* T swarmSetp();
8 {. ]$ _" T) s$ ~: r1 ^ actionGroup = new ActionGroupImpl(aZone);
0 ~! Q4 d9 n* q9 m/ V6 `; ~# g schedule = new ScheduleImpl(aZone);
9 Z/ m% c4 u0 m. ^3 H: Y try {) s. t; E3 A B# I2 @# w
Selector agentSel = new Selector(Agent.class, "agentStep", false);
! y' E! Q# q& {. B. x7 K* U2 L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" {4 Y0 S. z7 ~8 D2 l# \. X
' E+ e1 B+ G& q! E$ H
actionGroup.createActionForEach$message(list, agentSel);9 K0 T& |2 i& Y8 {5 | [) F
actionGroup.createActionTo$message(this, swarmSel);
, o# c9 [6 p! Z8 f5 i schedule.at$createAction(0, actionGroup);1 l" {5 V2 \% |* ]) I7 H D
schedule.at$createAction(1, actionGroup);
& A6 |" n& H" i1 c8 p schedule.at$createAction(2, actionGroup);& j) P; h4 c# y2 z1 r
8 T. Z: x9 k$ X: o
} catch (Exception e) {
$ M# }* Q$ T3 }4 T( q- ~4 N% @& r e.printStackTrace(System.err);
7 Y/ }9 X2 f6 t. @ //System.out.println(e);
5 P- {% H, E9 A- B9 J+ @" g! U System.exit(1);9 z0 I& a8 x, t
}; K- T, i% c: E: V* Z5 p
7 m, f% c5 Y7 V
& @5 Y) q! v* o5 T6 r/ k4 {
}+ B. D2 K7 f# Y% o1 p
0 z d/ N9 P0 d3 e% R$ ^
private void swarmSetp() {! f6 g* W& v, P8 |
list.addLast(new Agent(Id));. B/ ~! e7 L* [; V1 h5 ]
Id++;
) Y! m# y! \' } }
4 r Y C! P* s7 x
1 A+ ]" C5 \$ P! O& N3 p public Activity activateIn(Swarm context) {8 c4 {2 \! h9 ?" @
super.activateIn(context);
) G( e- E3 { G schedule.activateIn(this);
" c; t1 K( }% T6 W ^5 e return getActivity();
5 |9 E+ C7 a1 I, v6 g }9 J9 n3 j- ?) i6 T
! Q; V+ x* p: s' w8 r
public static void main(String[] args) {! g J9 j1 z Q( a N. V
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ j a& u _8 i1 D Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 P/ X7 h6 Q, `: W4 I swarms.buildObjects();9 D% l5 {3 h* o/ X! S. U
swarms.buildActions();% D' A' x \: l) s9 G; C
swarms.activateIn(null).run();8 @. N9 F, ~2 ^& r5 w! U( m9 }
}
) I$ E/ H' O: ^2 n# a7 b
! H7 x t: r5 h2 k} |
|