|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# U( o, u. Y3 P x
5 z8 u9 E& b: X本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 F2 O d5 W; b& |9 q& L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) A& b8 I2 Z0 U3 z
swarm.SignatureNotFoundException
6 k+ c+ ~' ~+ R8 d4 o0 ?3 [ at swarm.Selector.<init>(Selector.java:76); u: y* x, X, f/ r+ o
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ C4 h% r- @, L& s9 K at ActionGroupDemo.main(ActionGroupDemo.java:67)0 C4 C' Y5 I8 h
0 @$ I+ j/ X, H7 Q8 t6 A
7 v: _$ x7 d1 W+ ^
import swarm.objectbase.SwarmImpl;
/ M( q9 y6 e8 F# mimport swarm.objectbase.Swarm;, x, G' ?7 ^* `( ^
import swarm.activity.ScheduleImpl;
& u, v$ i# `) i6 x, {import swarm.activity.Activity;2 R9 V! S& l# P" h. P
import swarm.activity.ActionGroupImpl;4 \* }/ C% G1 F7 @2 \
import swarm.collections.ListImpl;
5 x) H& p+ s. o, t% j( j& qimport swarm.defobj.Zone; - ~* L' L- o+ n4 N1 X
import swarm.Globals;( N* y' f# G: `, d* w
import swarm.Selector;3 z& R6 |+ U! }4 w4 s( l
import swarm.activity.ActionGroup; 5 b& X- C( @* e4 S9 u$ m) D% b/ F
class Agent {
3 X$ z) S4 o4 `& @ char id;
, `$ }3 Q% g6 a7 Z( Q+ w8 ^; v. j2 \3 k: S9 @. P8 P" b
Agent(char id) {2 s( F: o7 ~( a; Y# k! U" o
this.id = id;
2 w' L6 J) |" ]5 C- ^ }
- Q- I; r" J0 O! O2 {" \" G
4 ?8 m- ^7 y# C1 H public void agentStep() {, F7 j; b4 j' V$ B0 V! R# R
System.out.println(id + ":" + Globals.env.getCurrentTime());( h- Q, v8 v% u! n
}
4 z2 s7 x* l( f1 r/ j9 `5 Q( F: ~}* P1 T. j9 v9 A' c
8 p) @; q) n% `# c! I3 ~5 z
public class ActionGroupDemo extends SwarmImpl {
2 I% R/ W& g+ U- \9 c ScheduleImpl schedule;6 _9 m0 ?; W$ \8 D7 X
ActionGroupImpl actionGroup;
$ L2 O4 `0 |1 n1 D ListImpl list;& W$ Y f+ A1 B1 w0 b* i8 o
char Id = 'a';
# n7 N! T- q. s6 D& T
1 X0 ]# A% t9 n' p2 H ActionGroupDemo(Zone aZone) {5 H% `; [! H' b; `) p
super(aZone); x, d8 X7 i4 F9 v( S7 ^* l+ H
list = new ListImpl(aZone);
R- o9 n8 ~, U swarmSetp();
7 T$ n- @$ g0 c$ M actionGroup = new ActionGroupImpl(aZone);
9 {1 K" e0 x. P3 M4 {/ \: ` schedule = new ScheduleImpl(aZone);4 ]$ h0 `% v! z% i, M4 M' |
try {
) [/ E5 R3 _. j Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ B3 Q3 W% u% E Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行( H9 ~, F y `& b7 c/ T
% [$ ?1 h ], I5 l
actionGroup.createActionForEach$message(list, agentSel);* ?6 \$ o# I3 p1 G) Z
actionGroup.createActionTo$message(this, swarmSel);
' _' t& F2 \6 z/ G5 C j schedule.at$createAction(0, actionGroup);
; f" E5 t! I) ~ schedule.at$createAction(1, actionGroup);
7 m8 v* I- ?. S schedule.at$createAction(2, actionGroup);$ q# f6 K( R" j) v" i2 m
' X# b, \) M9 x8 v
} catch (Exception e) {
/ L |- G( P/ { e.printStackTrace(System.err);4 |8 E4 b9 n/ _# X- j
//System.out.println(e);
6 S6 N0 u9 N6 u. a. ? System.exit(1);( y8 D6 Q' F7 r8 H% a0 g
}
' z# D) a9 ~0 d& Z5 q) W! z+ m& q; U9 o% Z/ u$ ]
* u# J6 P' m8 ?9 s
}0 l" z$ r* H- _* s' R
/ I2 A9 a F1 V0 `
private void swarmSetp() {/ C3 B' m( Y3 ]/ ^% ^" {- {
list.addLast(new Agent(Id));
* M! m x; i6 U2 | Id++;. G4 X# w6 i8 s: o
}$ \! Q8 E! Y) b7 z/ ~
, F9 A0 m' Y# N public Activity activateIn(Swarm context) {8 T( ^# @# m0 G3 I6 |- b% o' \! q7 H( W
super.activateIn(context);
6 e. v1 V7 W7 S& U schedule.activateIn(this);
( _( v6 O' O) C9 _1 o return getActivity();' `, \9 \5 m& N& `% l- ?/ x
} C# Y1 E8 E4 ^3 f) I! _% {
! l( ~9 ^+ m/ M' o& K public static void main(String[] args) {8 x7 v' v! a8 n' |8 \! c
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: { M2 O7 D! q Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 x* t. E, F1 r8 m" Q swarms.buildObjects();* R) O$ S8 Z E- a6 G' Y
swarms.buildActions();
0 R4 e/ _5 J, Y. u$ D swarms.activateIn(null).run();
1 l/ P! O( b& P/ \ }) f6 P5 E& Y! A* c/ r' T) F2 |
\% Y! ~% n! r& R
} |
|