|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 |+ r1 ^( l$ g$ h
; w" { e1 Z8 f, o7 O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- U% H3 V6 |! I, n H4 k
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. G j8 |5 X1 }" |" S+ i# A7 w
swarm.SignatureNotFoundException
* p. T0 Y5 o$ B* V9 L# c# p at swarm.Selector.<init>(Selector.java:76)
* n* R2 t4 h5 I( f; A at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 U* U& H8 W k9 Z- @3 k" W at ActionGroupDemo.main(ActionGroupDemo.java:67)( C# C9 K {9 e) \: k! t, N% ~
% b& s6 [8 N1 h. }
7 R4 j" A* H# kimport swarm.objectbase.SwarmImpl;' Y7 B5 ~! {# A0 X& Z& n4 c. J2 w4 o
import swarm.objectbase.Swarm;, s1 d0 P2 a3 x5 e/ ^
import swarm.activity.ScheduleImpl;5 i" ], _. n2 X8 `
import swarm.activity.Activity;
4 L$ z$ x' B: |6 g; ]' timport swarm.activity.ActionGroupImpl;1 k1 d- z6 @3 [/ I
import swarm.collections.ListImpl;8 W+ Q+ U! A* _2 y8 S. s
import swarm.defobj.Zone; 3 }4 R" u0 _* Q! U, V) w" {
import swarm.Globals;2 f* q' d6 @9 R
import swarm.Selector;1 a Q8 d2 u4 o- P: @
import swarm.activity.ActionGroup; _7 _, @1 o8 C# F) N' F5 `
class Agent {% P! x, G+ V% }3 b
char id;
$ t1 s- V+ q- k" r L8 k, D
) c" a/ j) F/ \ Agent(char id) {
$ Y( }1 t" t8 {9 z' i8 r7 b3 r8 g this.id = id;
1 X5 |$ U# w P$ A# A2 c }7 H5 f# m1 u [6 ~
/ b$ o8 k" R5 G" e5 ^
public void agentStep() {
9 F" P6 b; f4 b6 f, w# C System.out.println(id + ":" + Globals.env.getCurrentTime());3 i0 @! S( U' m2 w# b# x
}' d. I5 z2 |0 [+ C
}
- E; M | I/ W9 c4 U) t' p* [6 b/ q( B6 z
public class ActionGroupDemo extends SwarmImpl {- ^& N# w% B' l0 Y
ScheduleImpl schedule;
- M4 ~- f, O6 p, A ActionGroupImpl actionGroup;% B% \( }. B4 K, i5 n+ e1 j
ListImpl list;) x6 T# A- s' Q
char Id = 'a';
' b- x M+ J+ n9 Z& W; F
) a5 m! k8 D" p; x3 B" V* ` ActionGroupDemo(Zone aZone) {
; [$ L2 A$ W. H& L* S super(aZone);
% `# p5 s! U/ { list = new ListImpl(aZone);
: j' l1 ~! K7 h: Q5 ~0 W4 q! ~ swarmSetp();& u0 l# B3 F% F: T
actionGroup = new ActionGroupImpl(aZone);( l. {6 U: L1 H+ e) j
schedule = new ScheduleImpl(aZone);
+ X3 F+ {+ d- Q6 f( g try {
2 w) n- H' z& p' Q Selector agentSel = new Selector(Agent.class, "agentStep", false); ?3 F g# S1 v8 U5 X) W
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 \+ u4 t/ o% T! A: M
* a! X- b' r; ~3 y1 ^4 f actionGroup.createActionForEach$message(list, agentSel);: g- V3 T5 a) y! u. [! g
actionGroup.createActionTo$message(this, swarmSel);
) f: ]5 y+ I% H3 s8 F: U5 b' F schedule.at$createAction(0, actionGroup);* E+ S- U$ I, `; {0 f
schedule.at$createAction(1, actionGroup);
R0 R3 n- ^# n schedule.at$createAction(2, actionGroup);' c' H+ q2 {; q; Y! f+ L
' E- C, g! F) j9 `. C- y
} catch (Exception e) {
+ V/ x8 V) g. n. G# Y9 x e.printStackTrace(System.err);% b4 r3 ~# a( d- b7 o& v
//System.out.println(e);
+ ^) S1 E9 B. |, r' a System.exit(1);
/ l% `& R% K0 R% |8 u8 a8 P- ?5 f8 i }. d j. k. k& s
. E; H) B" R7 a6 R; W
* m/ i0 l9 a z$ W
}
; h* o: p) Z, H
4 V$ b5 O k1 ^; g* h: Y) z% H# o% t private void swarmSetp() {
7 O" ~8 x' a) z' C5 d list.addLast(new Agent(Id));# [% S+ A, m: Q9 J, P, R8 a" z
Id++;$ ^5 R7 |2 T2 u! p2 m9 F7 h! x
}9 S* D+ g9 H& }2 J2 _' U
: v8 E6 G& c" L9 d$ d C# r public Activity activateIn(Swarm context) {$ {& P& ~; P; k. B
super.activateIn(context);
9 o# ~* a7 Z, E5 _! {. g schedule.activateIn(this);
- ~6 k# ^" Q6 T$ X9 F* b return getActivity();
' o# c) |2 h" o M/ ^, h }) P) r n6 a3 r/ o
) z) e& E( ?% |" b) Q public static void main(String[] args) {
+ E- M. @: p% A$ K+ U Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 o h- t1 @1 H7 k Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);( o9 Q8 H& O5 v D/ F: `7 W
swarms.buildObjects();- E9 E9 S, \: d' i% J) K9 ~
swarms.buildActions();
6 J5 @2 g2 o- K& ^6 @ swarms.activateIn(null).run();$ O* O }4 r; N
}
: g7 @2 K2 X8 M5 Z6 Q
1 _: j; _! k$ ^/ k) s2 L} |
|