|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( C$ z* B$ Y2 U, }! t# u% w
% I. s5 `) c3 T8 {# C本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 a! G. q6 D4 d. @3 j, b: p& H4 J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ y) A: s4 h( S- R8 z
swarm.SignatureNotFoundException$ A& \- h% n) ?) e
at swarm.Selector.<init>(Selector.java:76)4 P l i9 d( h: G
at ActionGroupDemo.<init>(ActionGroupDemo.java:37) l& r- A2 C7 e, m2 L
at ActionGroupDemo.main(ActionGroupDemo.java:67)4 s3 M6 U6 f' T: c5 r- n' e9 D" u
# t% ]- }6 n9 ~; d0 n
4 h+ t2 u( U4 |( T4 vimport swarm.objectbase.SwarmImpl;
, A6 I5 E' s% O. Jimport swarm.objectbase.Swarm;( B8 ]6 z4 ?/ @. B. a* N/ Y6 Q% D
import swarm.activity.ScheduleImpl;
' b; y6 L' g( A ? z" {" Z1 D3 iimport swarm.activity.Activity;
( i# }, A0 w# e" ^* ~; gimport swarm.activity.ActionGroupImpl;5 D8 Q8 g8 {# G! ^: H, M* {1 K
import swarm.collections.ListImpl;
8 E/ k8 }/ h- F' w8 n3 N% D8 g! Oimport swarm.defobj.Zone;
( K# @: ?" H/ I' Q7 nimport swarm.Globals;1 o( i3 x9 P# w1 ]9 @
import swarm.Selector;7 A& _% N: N" ~) m) H
import swarm.activity.ActionGroup; 6 y; q7 F$ L' O: j& q
class Agent {( L. v# m& ?3 R6 E
char id; _* N) j: v( k2 A
5 q' f, Q2 Y5 U( u
Agent(char id) {
& b2 c$ @9 E' q! W& [ this.id = id;9 r7 x& p9 f/ R7 ^
}
, Y! X; D) t( p! |& j2 `
) y& J6 M: a5 y- w2 T public void agentStep() {% F, K( B! T1 D; {
System.out.println(id + ":" + Globals.env.getCurrentTime());4 V3 _- w( ?$ o
}( ~( j L: L2 P; U6 F. K3 `
}# b1 H- a7 T) n! [+ c+ ]
* C3 X4 k% p6 [
public class ActionGroupDemo extends SwarmImpl {+ C7 Y+ [- f5 f( V) A. R+ o; ]/ s
ScheduleImpl schedule;
- V+ G7 ~2 t2 y ActionGroupImpl actionGroup;9 c4 I2 S: `5 v% B* r7 J
ListImpl list;
9 j w0 n, I( I! T char Id = 'a';2 Y9 s5 S, t+ A0 Q7 a" I
% R% T* c, O6 M9 y+ j& L ActionGroupDemo(Zone aZone) {
" n; g j8 Y/ T super(aZone); S) f8 D( z" V1 i. d, k
list = new ListImpl(aZone);: R' m$ p* T/ ?) i2 g0 j
swarmSetp();
# E2 C0 g/ c- |- d: M1 P actionGroup = new ActionGroupImpl(aZone);
/ f# G. b9 _$ B. C& ^3 ~" k schedule = new ScheduleImpl(aZone);
, V( r5 s" m) W% @$ W try {" M+ D, D4 i3 s6 ^! G0 b7 j; s9 L
Selector agentSel = new Selector(Agent.class, "agentStep", false);$ m# ^9 [* |) c* S# z* O
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ u* [, s `: S q* c/ @
# P4 x2 v1 u7 v# m2 H# j8 t2 C) K% ~
actionGroup.createActionForEach$message(list, agentSel);! W a# {6 D, K0 a9 a# M
actionGroup.createActionTo$message(this, swarmSel);
' `* I, J2 K2 B9 ? schedule.at$createAction(0, actionGroup);5 |4 X+ u2 \$ q$ o) ~* `
schedule.at$createAction(1, actionGroup);
4 J) ~% ~5 Y, L0 j schedule.at$createAction(2, actionGroup);
# M: c' |& \# u( |( G' f2 j0 x4 U* l5 n/ t$ U! o# ?) i
} catch (Exception e) {" [2 @+ K' f) m" N
e.printStackTrace(System.err);
1 H3 M2 F/ B4 x8 W" D5 M //System.out.println(e);
5 x' L+ }) w2 p7 F System.exit(1);0 C( k! _8 Y; |
}3 V: {- b$ K+ ?6 L- W$ e0 s5 [
! t! c# K6 T, n4 E/ i6 O4 j$ M$ l
$ w3 M* L @: j }7 O9 O5 @' N! ^. }7 Y9 J
4 q7 @( J" T# }5 Q/ m0 ~ M private void swarmSetp() {( G. m- E, B7 k8 Z
list.addLast(new Agent(Id));
/ u' p2 E/ {' X Id++;
7 E; C5 c1 }' l4 J, D8 ?. i }7 M( g2 w6 s' N/ P$ j: {
3 o$ R$ f' ?) Z$ Y. g7 [ c public Activity activateIn(Swarm context) {
# T: L% X4 ]6 `! y; j super.activateIn(context);
$ x% j' b1 `% ] schedule.activateIn(this);: F1 C5 p1 i! |* |
return getActivity();. M8 P* Y; f+ F; \% Y" H
}. b- ^) e9 r0 g% P
k7 ?1 A, z$ ]. W) V
public static void main(String[] args) {' N/ e* j' J1 D* n0 h' @5 k
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
X' ~% l" x+ @( F Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. W' L' O6 i* q$ a swarms.buildObjects();
3 z0 o* L2 p' B: Q2 u5 G3 n swarms.buildActions();
& I% U7 W" E: H) w$ f/ ~ swarms.activateIn(null).run();
- u- h9 B( z7 i8 y- P# q }2 v9 Q( o: Y! T7 R/ T% e9 \
% h; L. y* w; {$ b} |
|