|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 m6 B& S+ j6 d' Z1 r0 C, k. H# D
5 V! V" H$ G* e9 _( V) ?
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 J K) z* `: n- L( _& L4 @以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& j' s% U! }! b' w/ l6 @swarm.SignatureNotFoundException; s6 Z* F) E. D u0 P0 u! X
at swarm.Selector.<init>(Selector.java:76)
c9 f; r' x. P" I7 | at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ p _% F% G( g: p1 V at ActionGroupDemo.main(ActionGroupDemo.java:67)* o' z: P1 {3 u: {
5 \/ U: _" S0 T9 [4 n/ q1 V
& p* i9 W6 @) i; J" q4 Rimport swarm.objectbase.SwarmImpl;* y, A- Z5 X8 o+ U8 G+ g% H
import swarm.objectbase.Swarm;
3 Y! h9 ?7 q% Y9 j* q% Gimport swarm.activity.ScheduleImpl;) r5 W% s* w5 W1 ]- D
import swarm.activity.Activity;! A* @4 R# k( e' I& Y" g) N
import swarm.activity.ActionGroupImpl;
2 G; J, j& S$ H1 a/ R/ ?: `. I9 fimport swarm.collections.ListImpl; E+ V1 G1 J; ^# ^# p# V4 a$ I; U
import swarm.defobj.Zone;
' W; H+ Q7 o/ g% S2 A7 W9 [8 s4 Dimport swarm.Globals;$ d0 c* C% t$ a1 v6 w
import swarm.Selector;* @% o+ P; J* g/ Y+ |
import swarm.activity.ActionGroup;
' v, ~$ U" ~* u; f0 Yclass Agent {
" a/ H- a$ y) n$ ~; p4 ]: V0 l! m char id;% p0 z! {" ~* a T% l
) u' |" L( {: R' q, g Agent(char id) {
9 b4 R+ H" k% ^: P! Z' T0 ` this.id = id;" C7 Y; U3 L# \. f8 n% g
}0 g9 }) T1 W: E
o6 `# Y8 j6 T
public void agentStep() {
1 L1 l5 ~0 J( ^ System.out.println(id + ":" + Globals.env.getCurrentTime());
4 B4 ?. i' a; ~ }! o4 t4 d- n% T5 t' w) @7 L
}
& }; W, l+ V: o( }# A' [ O# d5 G1 ^$ D" G5 Y# q
public class ActionGroupDemo extends SwarmImpl {
% D) L: f% B3 O! ~$ ]( J ScheduleImpl schedule;: m f# ^- Z* E
ActionGroupImpl actionGroup;2 {! z0 ?! U, e, m& q( i& ]) ]
ListImpl list;
. W% K y7 s# X9 M: X char Id = 'a';9 j5 J& h1 {' k
0 t5 G D; V2 o: o% ~ ActionGroupDemo(Zone aZone) {3 [1 w0 b' R7 R' X4 `8 W
super(aZone);( `) U' O1 {1 { `5 o1 x
list = new ListImpl(aZone);8 K7 I( o0 X6 `5 k0 t6 y
swarmSetp();
% b( X7 z/ |7 B( m actionGroup = new ActionGroupImpl(aZone);# I) S W* z$ ^2 |
schedule = new ScheduleImpl(aZone);
5 x# U% G% ?" }' N6 E& K* i x: f try {
$ q7 C, F' b# E# X& l! O, ~3 g2 m Selector agentSel = new Selector(Agent.class, "agentStep", false);: J1 u& T0 H0 ~ }* x/ O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' w3 X( n; Z) E P
5 G& J8 p* q) L5 @; w- N% B8 |5 M actionGroup.createActionForEach$message(list, agentSel);8 m- L! I" i% k
actionGroup.createActionTo$message(this, swarmSel);
- ?$ c% A( R; I schedule.at$createAction(0, actionGroup);% t- }9 t( A& A7 T& Z* p8 W* u
schedule.at$createAction(1, actionGroup);
5 W, W+ h/ {- j: \( Z3 | schedule.at$createAction(2, actionGroup);
8 p& t" b8 Y5 r8 o1 \& S+ d# t+ g$ b+ Z. W# Y7 N7 p
} catch (Exception e) {7 @! S- B1 x n
e.printStackTrace(System.err);
) A* p) z/ k" F1 m& D" O //System.out.println(e);
' ^, a( R! I8 K+ M0 C System.exit(1);
4 A& u( n" ]" U" L }
0 ` B" X) v/ a+ ?) |, B
2 a$ q$ \5 @; d8 ^0 W9 ~5 U5 m0 g% P/ z% U* O" Z( o3 V! \" ~
}
; H! y+ [0 G; @2 e9 I% P8 \& e% Y
% S+ Q( g; V* V! @' `. C3 `, v private void swarmSetp() {4 t3 F& n4 N6 q+ \. z) I
list.addLast(new Agent(Id));' W2 T1 F" y7 m, g
Id++;
9 R6 n* t0 u5 ?6 P [3 Q8 o- Q3 z }
, C5 [; Q- I. n6 A8 y# ]* V! U8 _: c! c
public Activity activateIn(Swarm context) {& n, a$ P$ ?! }
super.activateIn(context);
% S' {, S+ d D& B# g& V schedule.activateIn(this);
/ B* q q. W2 I: z: u# c return getActivity();0 e* E3 g# W# x; z+ y1 R2 X5 N
}! K0 G$ S1 m# z! u' q
8 T9 T% p* {( R
public static void main(String[] args) {# ~9 x8 V- h H0 l1 M
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 P- Y# z3 C z2 _- r4 \6 t3 |$ Q
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
; R+ L" T9 R: U- j, R2 Y swarms.buildObjects();
& r4 V$ a3 d9 q( O% p2 s) b# O4 I swarms.buildActions();7 F: |, ?# @5 A. t1 _; ]. u
swarms.activateIn(null).run();
% @, f0 T, w: L! Q! d$ i }0 x' C& j7 D2 _& `, ]9 O6 y
: [3 k: K2 s2 T: ^8 ]. J* [} |
|