|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + V* r5 ^& z. G
2 ?) M3 L0 p0 ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 {. s# i& @& n5 u0 d8 j4 i# k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.. X! L. H, H" q4 F, O
swarm.SignatureNotFoundException8 |% Y6 Z! p- j( D, Y: |2 B) R
at swarm.Selector.<init>(Selector.java:76)
8 ]3 Y; s) R! \6 l; ^* S: [ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: b- I5 d. b' [0 z! \ at ActionGroupDemo.main(ActionGroupDemo.java:67)9 f7 J7 J) Q- ~' x0 v/ d) p
, n9 S# H- ?0 C* i3 a
8 ^: j, j& Q$ K( K/ fimport swarm.objectbase.SwarmImpl;9 J& K& w3 P, U8 u3 G1 O
import swarm.objectbase.Swarm;
- t) U: F, m% L) A% u+ g+ Qimport swarm.activity.ScheduleImpl;
, F7 i- W% u' [' Gimport swarm.activity.Activity;
. L* L/ N" r( C: _( Q4 Eimport swarm.activity.ActionGroupImpl;
7 \: r& c8 ~) t+ i$ C: |2 X& T+ Fimport swarm.collections.ListImpl;
% Z8 A2 y: ^1 ^7 A( ]; limport swarm.defobj.Zone;
- r* {7 v+ Q, \import swarm.Globals;
" x) q! r7 D6 |$ ~# Limport swarm.Selector;/ K k. Q6 p, s" I* N
import swarm.activity.ActionGroup; 7 v4 e' ^* a0 @6 `
class Agent {9 f( B( M8 b |" w8 I
char id;3 G( f) ]5 {* F, w0 e/ P
2 l! v& ]9 S" G# l
Agent(char id) {
9 u2 z6 M$ y+ q. c8 s: y+ D this.id = id;2 b8 X# Y# V' Z [# ]% e, \
}
- Z9 b; R: [7 c( k' c G
& ^( D. R- z1 Q/ r' U9 _ public void agentStep() {* @$ K. S* `' h% ?, ^
System.out.println(id + ":" + Globals.env.getCurrentTime());
' r8 L7 @' c) i* P3 O a }
4 _0 l9 O; k) K3 N}/ j$ A- Z! h) a4 I% X+ e* K7 S
3 o# ~5 ?7 x/ o; P) L% o- Q
public class ActionGroupDemo extends SwarmImpl {
# [( M% Q4 p! Z0 C$ I3 Y ScheduleImpl schedule;2 u$ V- V5 _1 ?" Z- _$ d6 y( \
ActionGroupImpl actionGroup;: x1 F v+ i& D* N; A. V% a+ w2 W3 {
ListImpl list;0 [( ?' J+ k2 w) z- Q$ t }
char Id = 'a';
2 `9 n4 D* J' U8 K8 ^4 D& y& a
2 z ?5 }+ e8 p3 Z; {* C. A ActionGroupDemo(Zone aZone) {
9 \0 e2 j% I8 x5 a2 a# }1 J/ v$ M super(aZone);8 S9 c. I4 M* T" ^6 `, l' a
list = new ListImpl(aZone);' Q1 U) A5 B* F2 Y
swarmSetp();: h# `1 q8 ?: {, o$ {9 d
actionGroup = new ActionGroupImpl(aZone);0 S" _5 V) x8 S, a! X' g& f. G
schedule = new ScheduleImpl(aZone);
1 Y! _. L) b( F# l8 l6 V1 H9 g8 w try {
: A4 p G& Q8 d3 Y Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ C9 q! v4 |; s0 b2 _7 `1 u Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
& ]8 \" }- V3 P" D9 i
4 V* a- }; m, i actionGroup.createActionForEach$message(list, agentSel);- H+ M" M* N( d
actionGroup.createActionTo$message(this, swarmSel);
! N8 l" e# d5 q( x' o schedule.at$createAction(0, actionGroup);
4 M, G; F% }1 m2 U3 ^3 f" H" R schedule.at$createAction(1, actionGroup);1 Y/ {0 i) b* f3 F% h
schedule.at$createAction(2, actionGroup);0 i. s2 ~# F. W4 o8 s; s6 T
" t" I5 |; q" d3 X! c' O } catch (Exception e) {( h* a3 F* R) u
e.printStackTrace(System.err);
' H% p- ]# I9 l- _ //System.out.println(e);$ Y0 t4 P& v& I% B h4 C. K
System.exit(1); V$ z! P# E; q0 o
}1 G" i% L4 \' e- ^/ K
4 T( P* H6 B* s! x1 J
/ W0 d- b# P/ x4 x/ M- Y
}0 m8 t. K0 z$ i' P8 \8 {! }
( ~: z7 G" W! G4 _. f: @ private void swarmSetp() {
8 ]; c+ K) `+ O" v; G$ Z Y list.addLast(new Agent(Id));+ X: T( C+ Z- R3 n" q5 ]: g* O
Id++;% H. L9 U9 Z' U! |) c: E
}
: o5 R; C$ x% u/ o4 c" O( c* T9 i/ F) X: _
public Activity activateIn(Swarm context) {4 l1 v7 U: ]# T5 C' X1 W' d) b
super.activateIn(context);
' ] x5 U' a2 q7 o$ z0 o2 l' ], ? schedule.activateIn(this);
3 y/ u& n0 Q, m5 p return getActivity();+ u5 }2 q$ p# i2 z/ }+ b5 y- [
}8 E) c! V4 U: J$ K1 ?
; X# o" @2 }2 Z
public static void main(String[] args) {
w& R& V2 a1 W5 o* B& u Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 V. D9 O; F0 M6 ~+ v2 p
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 v3 f8 I6 A3 O1 g
swarms.buildObjects();
+ f& J# g2 z) \6 E2 z" N1 B. @ swarms.buildActions();& L' z5 T' I" Q. z
swarms.activateIn(null).run();
% Y/ q' `' d. ^& B8 z' j& g3 {, n8 B }
! ]. T$ ^8 i: W8 ?: E3 Z' B5 q
} |
|