|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( d1 V; N4 b4 a8 \$ Q/ i2 z0 t9 y, }" h2 N: t& l
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 C' U9 W( n+ Q+ y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 A* ]9 v" L) c; M, _
swarm.SignatureNotFoundException9 v0 V/ {# _; V3 b% C. B
at swarm.Selector.<init>(Selector.java:76)
" r9 ]8 B$ Y9 o9 Z at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 t! D7 G; m' ` at ActionGroupDemo.main(ActionGroupDemo.java:67)
% g& A) o1 G+ y6 g( z
: g- n0 w* j/ [$ v' Y# O
, k: T' f+ {' k1 }8 limport swarm.objectbase.SwarmImpl;
* c: o+ K4 y/ |6 \- himport swarm.objectbase.Swarm;
! f2 h) x$ f5 m9 |% y# i" Ximport swarm.activity.ScheduleImpl;
% C/ q# o+ C- Q) u+ Qimport swarm.activity.Activity;
$ o9 ]# N3 ?9 p+ g* E' uimport swarm.activity.ActionGroupImpl;- \% f n8 C0 A) q1 [6 r
import swarm.collections.ListImpl;' g' i) E! h9 L" M
import swarm.defobj.Zone; ; S9 L. @$ ^$ `- J
import swarm.Globals;* \( {2 M( a7 o% _ g5 N8 ^" {
import swarm.Selector;. e( G1 a8 W% N8 a
import swarm.activity.ActionGroup;
. \' O: r; G# [class Agent {
, Q" H' e/ |# ~6 Y3 O+ X char id;
% b4 S8 H ]/ q
7 @2 Q) e6 x1 e' B Agent(char id) {
2 G; P& Y5 \/ D; T+ d this.id = id;; |7 i7 G9 w5 i( j9 f6 X% Z7 w3 t" I
}/ \' d) X- N! }- v7 P* z- h
; ? \% I. b0 a% B7 d
public void agentStep() {
8 F1 [- x& K# I1 M/ x% D2 d System.out.println(id + ":" + Globals.env.getCurrentTime()); d3 Q9 H4 E! ?! [$ G B' {" y
}
" {' P, ?( m U. L0 R}
. y' j* P* T, a* t5 e8 S$ q: r, t& U( ?! @' R5 ~1 E3 {: d
public class ActionGroupDemo extends SwarmImpl {/ h2 H6 u( z" U, D
ScheduleImpl schedule;
; Q5 b/ F: f$ X3 X$ {% z ActionGroupImpl actionGroup;1 H! u) v! s5 T* U1 I
ListImpl list;' X' q2 u: y, P$ p1 B
char Id = 'a';' L! W5 h' E: g! O4 m; r6 P# g6 M, X
! t' S8 o! a7 l5 y# ~ ActionGroupDemo(Zone aZone) {
( h `4 R, V8 V- }- i# K& l' M super(aZone);
& x+ c. ^* G7 t' O \ list = new ListImpl(aZone);. j) A" i5 i" ]7 o2 z: y
swarmSetp();! \" D5 b' h+ `9 D& T/ ^3 R
actionGroup = new ActionGroupImpl(aZone);
3 _# e/ a, Y! _/ b8 |4 j schedule = new ScheduleImpl(aZone);! @( M/ H8 J! W$ w$ v0 B2 {
try {+ B" O) i" c2 m2 h9 A" X0 ^
Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 n9 Y: l K3 s' Q. \ Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 s7 M- Q; q" d6 O2 U6 Q% I 8 [& _! j0 s9 T- Z* y
actionGroup.createActionForEach$message(list, agentSel);: i5 M) J& Y W
actionGroup.createActionTo$message(this, swarmSel);, ]/ J s1 n( _9 A# L: ]
schedule.at$createAction(0, actionGroup);
; `$ C$ g" M% E; w4 { schedule.at$createAction(1, actionGroup);
, e: J8 r2 o% U2 b! \ schedule.at$createAction(2, actionGroup);- |/ X L- F$ t' d- G |
% F" N+ W. {( `1 p0 N8 d
} catch (Exception e) {
, ~( J/ ]2 S' s# M( H' q) P: q e.printStackTrace(System.err);
( [/ r) n/ s. v4 D5 A# A9 E5 M //System.out.println(e);1 ?+ @( O1 K% g7 R0 h- w
System.exit(1);4 }" K: n; S, q
}# j8 F( q8 W- B* k
2 Y! X6 x: ]% G" s4 G1 \( X6 A+ i4 Y- V; j% `; C0 ]
}
1 e& S7 [* Z0 V" M6 l& V5 {4 f* }5 S+ J
private void swarmSetp() {
' w8 p" p5 b( w list.addLast(new Agent(Id));
! D k4 {5 v' }" j$ p: d Id++;
) q& F. D3 O! Z+ ?* u* \+ r- O2 f }. j% F5 {' Z, H
8 r& T% O; E& r4 M7 D- l
public Activity activateIn(Swarm context) {3 U% }) @% o1 P6 ~8 y( K
super.activateIn(context);
5 u, y8 l- F/ _( K, B schedule.activateIn(this);
: o3 o1 W) |2 r4 {: X# S return getActivity();
2 N5 J8 a6 N# G$ Z# e }
# G! b# l w8 L, b2 e$ [+ ~& O
* e- S) S5 z( q+ G( [- U5 B6 C public static void main(String[] args) {
- u5 ?. ^; I2 O: ]; x Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 T& e& f+ M1 o5 m+ R' _+ ^" }$ m% [ Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ a; N% G* Q" D6 m1 j, P- `( N- p
swarms.buildObjects();' W! W/ E/ c4 T' S' f" W7 w
swarms.buildActions();
2 P0 i& s S8 |9 ^" G swarms.activateIn(null).run();
1 W+ r6 l- `+ [8 p8 p/ M6 B }
& d4 v2 r" M- k# I$ b: X. U
9 d" z% H5 T. a7 \$ d+ M} |
|