|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ) f, `* ~3 M6 l$ @: X9 E
$ S3 `! [7 O( x+ w
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. o, Z) E# Z! L- U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. C5 S; @$ K7 I+ }% R0 [7 oswarm.SignatureNotFoundException' C' U6 h( l# n; g: ]
at swarm.Selector.<init>(Selector.java:76). {- _/ L. q" m, N. {9 d: v& X
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 t3 A- S- Q B6 F* p, M( K
at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 i4 Z+ ~' T# f3 f u0 U( Q/ y# ?: v+ { [" o) o1 i
* ^' i" d, T( Q% Q' Vimport swarm.objectbase.SwarmImpl;9 U" _" e: Q9 ]! L
import swarm.objectbase.Swarm;+ ?0 m( e8 L8 a% E
import swarm.activity.ScheduleImpl;7 v4 H/ o" K: I. M
import swarm.activity.Activity;7 a. l! `* p! x
import swarm.activity.ActionGroupImpl;* Y4 p: u: E/ ]7 B) o" ^
import swarm.collections.ListImpl;3 f1 k# R; s }' }! ]( r
import swarm.defobj.Zone;
2 a$ G* K( m/ |import swarm.Globals;& R# L* W. x& Y9 ?- h1 x6 |
import swarm.Selector;
+ v& _2 S" \* ^, Simport swarm.activity.ActionGroup; 8 R) a( Q( H8 N/ K8 u
class Agent {* k! a* s; U$ R( B6 [% `' ~
char id;' p/ |) q3 f5 t; p: ~
! a9 E* e5 O& D7 Q3 g4 k8 j. s4 O Agent(char id) {7 t$ K1 f' A" t0 {5 C! D# o
this.id = id;' V, J4 m/ R0 |6 h& ]. o
}) p! O" t4 d0 `7 Y
9 ?# `( P: K7 Y- b+ U. y! x1 O
public void agentStep() {
4 }( P. o1 M) k) \! x System.out.println(id + ":" + Globals.env.getCurrentTime());
) i- w0 i+ v- e5 k7 j. O& Y" ^3 Z3 _ }2 R i! p6 o+ h8 o. U- b
}
( d& c2 W' r) J* \7 R0 G' D3 ]; T2 Q
$ v0 w$ q2 U( Opublic class ActionGroupDemo extends SwarmImpl {3 r0 }* z% w$ _; h- ?* E9 S }
ScheduleImpl schedule;
5 N" I: T l# X- J8 n6 y ActionGroupImpl actionGroup;
% d t! Q. W6 f* N ListImpl list;
* s, V F# W% c3 V char Id = 'a';$ T7 [$ }- b7 H4 ^; e
# j- E. y; z' m+ M5 F5 ]+ T$ _, M ActionGroupDemo(Zone aZone) {
2 s `: Z: u# W- y+ o super(aZone);! f; I5 ^1 q# K/ H
list = new ListImpl(aZone);2 d/ Z5 t& {/ \6 O- k7 |8 }: Y
swarmSetp();
, ~+ w @( f# M& s' {" U actionGroup = new ActionGroupImpl(aZone);4 f" R4 ~7 t* N. S" v) T' p
schedule = new ScheduleImpl(aZone); U; w) n- S" V) h6 z5 S
try {0 a' g$ C! [7 `- J
Selector agentSel = new Selector(Agent.class, "agentStep", false);
" e0 J7 h) M q7 o Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 x! S; }6 b! V . Y5 g* m5 s2 |, E. J0 r! A
actionGroup.createActionForEach$message(list, agentSel);
$ I# Z) i5 o# U) V actionGroup.createActionTo$message(this, swarmSel);7 Z+ H- i& a! n
schedule.at$createAction(0, actionGroup);( W% N8 }% g J J) p9 M$ z, p
schedule.at$createAction(1, actionGroup);/ E' [2 X, `" n7 w2 @
schedule.at$createAction(2, actionGroup);
3 x: F) D! o* a/ Q1 x& K! T" [# L. Z( w+ d1 k7 T9 l
} catch (Exception e) {
6 J% F U/ |$ A' `& d$ X e.printStackTrace(System.err);
# [: B1 B+ C' a //System.out.println(e);2 {3 f/ N# q0 T n; W! ^9 {2 `
System.exit(1);
6 f2 k, _7 T) m }
2 W# F# W3 j+ P# M, D+ @( A: Z0 I! f0 i3 ^( J" Q# m; k: B
1 N2 m' h3 T: u4 {
}
( n0 o% ]" g4 @1 @
6 n C) Q5 D- ~3 H' F k0 f7 n private void swarmSetp() {+ W% U- `: n2 r" N+ x) f* m! J
list.addLast(new Agent(Id));
. k. o9 s6 R, b+ { Id++;
+ I7 _ z. M8 ~1 a }
2 A, f, e Z1 |
1 B, y% a# C* f% j$ h" J public Activity activateIn(Swarm context) {
; ~& V6 t8 @0 k P G super.activateIn(context);
3 m; Z" M1 T# O( c, d( a schedule.activateIn(this);
1 U* N/ s \, g return getActivity();
# y0 ?& }, o% k5 m8 w }0 Z3 b2 Q' p# [! U$ e
) C) z( l& f/ J
public static void main(String[] args) {
! L( p& T/ g" p2 z Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' z# v6 Q+ b' l/ u Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: ~7 w9 Z4 D" F* u5 R, n7 w
swarms.buildObjects();: Q/ \" k) b8 j3 w5 E2 d
swarms.buildActions();- A8 S) T- W2 u9 e) N& L& O
swarms.activateIn(null).run();
3 W9 J$ V4 r8 x% c. X7 \7 \ }
3 E# }( i4 t6 m. H$ B- k$ ^. @
5 b2 T7 b2 N4 `8 `7 X0 j( h" {0 w8 R6 {} |
|