|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 B: t) g1 c$ o& h- S% i2 {6 O
g/ r# W1 ~' w" c% M4 Z+ W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ j# k, T: z9 r7 h! P& ^$ ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! {8 w) k/ y+ b. x
swarm.SignatureNotFoundException
5 w; v0 H9 r) x8 p1 _# c/ W at swarm.Selector.<init>(Selector.java:76)
# [& g. T! y0 ?7 v at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 H7 X9 d; n7 u1 h& D. e* ]" O at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 W4 r, X8 n* q4 U3 j1 {# F9 k
( n% R1 l1 h! k$ ]9 I1 f
2 Y4 E+ a2 \; V8 cimport swarm.objectbase.SwarmImpl; f. R, G& w6 P2 u4 f: | N
import swarm.objectbase.Swarm;& K7 S( T6 X C- W1 S! E* F6 T
import swarm.activity.ScheduleImpl;
. | E( G, g$ timport swarm.activity.Activity;: I9 S0 V# M* a7 ~ B/ }5 n
import swarm.activity.ActionGroupImpl;& t4 {9 t8 v7 A& `* R
import swarm.collections.ListImpl; K! H3 o5 j0 Z: ~6 e, b
import swarm.defobj.Zone; ) W5 S% ~( \& v, d! K4 ]
import swarm.Globals;5 U. j) f5 h {% E0 [" N: W
import swarm.Selector;, a: q" G; g$ L* B2 u: z
import swarm.activity.ActionGroup; % S4 m3 \) S9 ^' s- @# R
class Agent {! {% A4 T& B4 I( G4 y6 ~& ^
char id;7 Q% d3 J# c+ i3 }
( N) X# c8 q, D, ~: v7 W' a( Y Agent(char id) {
' B; [; s( ~, S, |/ F1 r8 w) ]- H this.id = id;* `& @7 i- F. }* p
} U6 e& G9 W' i3 X$ o9 d: ?, e Z- O
# I* @$ ?5 M: C1 ?9 Z public void agentStep() {+ F6 z& E( x+ k) h0 t( A. @
System.out.println(id + ":" + Globals.env.getCurrentTime());
1 z' [) W8 u }2 ~; j* r }" {3 A& Z* l3 t% b6 \9 m
}3 f+ v, i0 J: K
# r2 O1 d! Z- e5 V1 z
public class ActionGroupDemo extends SwarmImpl {
3 N. f- T: d; l# b% @( | ScheduleImpl schedule;# M; i; A% t5 Z
ActionGroupImpl actionGroup;) `% |' ]8 J7 Y
ListImpl list;
6 w5 X9 r$ \& j5 V char Id = 'a';
. U5 g4 h, u Z' p% K) f8 p9 k8 l
ActionGroupDemo(Zone aZone) {+ O: [3 }$ ^. M# }( Z( L3 T
super(aZone);$ v' E% {9 a9 d8 |5 F% S d% C# B% t
list = new ListImpl(aZone);4 E0 a$ j E8 ~
swarmSetp();
- R: f5 v- X0 ]' D/ u. \ actionGroup = new ActionGroupImpl(aZone);7 W+ G ^& t+ \" w; e
schedule = new ScheduleImpl(aZone);( Y& h. Y$ b5 \
try {0 E9 s/ V2 Z, r& `# e3 m
Selector agentSel = new Selector(Agent.class, "agentStep", false);, F2 F# L9 l) ^3 L9 n1 K
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 Q1 Z' j# P) K; ^3 ~& t
2 |5 i; m; Y( f' o actionGroup.createActionForEach$message(list, agentSel);% k+ M( U' I1 e
actionGroup.createActionTo$message(this, swarmSel);
7 k. a' u1 `. \, P schedule.at$createAction(0, actionGroup);
; X$ L9 ^0 q, x9 J' v- g schedule.at$createAction(1, actionGroup);$ c1 ^7 _" d# X/ p! } P
schedule.at$createAction(2, actionGroup);
8 K: v" M' A& x1 ?9 ^7 z. V9 w4 k; j, j9 K" p
} catch (Exception e) {4 @' U7 C5 v" k1 O* b2 Q
e.printStackTrace(System.err);- y/ g: E+ [1 D' S* r
//System.out.println(e);# s# b! s8 l0 A5 V
System.exit(1);
9 ^; v3 r; E3 Y0 | }8 x% J- q! k1 j4 S8 B* e: U
* q) X8 G9 o' i
; G4 O" O$ c& V }* K- P2 m( i f( Q7 n
% Z! m. p! @6 T0 {; Z private void swarmSetp() {- |. W, L+ X: g$ F- ]8 m$ y6 v' |' H
list.addLast(new Agent(Id));
& W7 v8 V% f1 k9 P" S# q: ^; @ Id++;* k/ F9 W* ?) E2 ^
}
; _0 E: N2 Y i E, V( w5 n* e$ U, j5 `1 E
public Activity activateIn(Swarm context) {# r& G" b+ C+ f: r9 o3 F$ M
super.activateIn(context);8 @6 v* a9 k' w ?+ Y4 J$ S; H
schedule.activateIn(this);/ W* A& H! `; O5 |
return getActivity();
: {5 y* m: `' r5 e4 I! i% N9 ]4 E }
* H9 k+ {- p5 h! Z" I! x, m4 G% _& s, t
public static void main(String[] args) { p' j/ N* F& @2 D4 J9 I
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 R8 \( V" F! r3 N3 u+ b
Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 t/ _% `1 N7 [% s8 g! a, Q$ Z swarms.buildObjects();
. U8 K& `+ g0 m* B$ i swarms.buildActions();
8 Q4 D1 v9 Y6 M q4 |$ ~ swarms.activateIn(null).run();9 W1 _) d+ O2 Q0 V6 ]1 K9 v# j
}
9 U$ r/ O" ?9 C9 r
3 p t8 M+ u9 F0 U; y} |
|