|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 & R/ M: z* ~- n' k
8 D1 X, O" C, f# y+ n* q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" r, j7 e9 }, T a% H$ ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 A/ J. w+ P& c3 I2 Y1 ^
swarm.SignatureNotFoundException0 x" T ~# Y5 \# ` g3 R( A
at swarm.Selector.<init>(Selector.java:76)% `" u7 T4 s$ [
at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 w; X$ z+ q+ @9 S2 ? at ActionGroupDemo.main(ActionGroupDemo.java:67); K4 c8 M4 |; }& `" a
, E( O& X, u2 f. b5 w5 o
( k$ L, a! \- K, o+ Q$ A6 Mimport swarm.objectbase.SwarmImpl;
) q& d# w2 w3 k0 D) Q3 ]import swarm.objectbase.Swarm;
" c9 q: s: @; i( G8 timport swarm.activity.ScheduleImpl;# s, v" C0 @% G% v
import swarm.activity.Activity;
+ S9 |4 R. P" p. jimport swarm.activity.ActionGroupImpl;' u9 j+ t0 f; K Q6 e! c' h' a
import swarm.collections.ListImpl;, q8 ?& y3 y3 |$ R! {
import swarm.defobj.Zone;
/ Q; z# I3 ]+ \1 @$ v: \import swarm.Globals;
! y( X8 k, T4 z/ ~import swarm.Selector;7 j% H: w+ x% F5 O. {
import swarm.activity.ActionGroup; 5 J$ K4 X- Q8 t5 q* L. t/ T0 `
class Agent {
6 e( b, A& f0 K/ P) f char id;
4 E3 a z3 G; G# v, m- m% V( g7 L* T( z! C9 ^! T+ j
Agent(char id) {
1 X# t3 Y+ p! }% Q1 n+ j0 G/ d: e this.id = id;
g& s% G1 ]6 P% e/ _ }* ~/ R; C Z4 A8 Y% x
$ R, T7 a/ ~. g4 }0 F2 B public void agentStep() {
5 m. f% ~0 S! F. @$ V* X6 b System.out.println(id + ":" + Globals.env.getCurrentTime());- S5 t Q" ?* i5 q: i
}+ A$ k1 V% H3 @. ~( t
}) X7 f- W2 d) X& d
: e* X0 D! u, H4 A' y0 \public class ActionGroupDemo extends SwarmImpl {
2 v M$ ^; D3 ?+ X* q. v' i ScheduleImpl schedule;' v) Q3 |' i* l4 ~2 {6 d
ActionGroupImpl actionGroup;
% u$ @7 {/ z* `! L" G" R1 g6 o ListImpl list;
" n/ g+ G* W* a* y+ G1 [ char Id = 'a';
1 N7 r9 J) D0 w
' j& H- T1 }# r6 S: m6 ?2 E* Q/ Y ActionGroupDemo(Zone aZone) {' }& d ^- ~6 \3 q: t7 [6 V; O
super(aZone);
( c7 P" ?2 z8 W7 M1 [ G! C* j( p list = new ListImpl(aZone);' ]5 J7 t6 ~ I5 F$ H
swarmSetp();; a% `+ Q: c F3 F7 |/ A% N
actionGroup = new ActionGroupImpl(aZone); ^9 k1 F+ t! a% h# S1 O
schedule = new ScheduleImpl(aZone); s P6 r0 W' Y7 c. m
try {
, J8 l2 W0 Z' r# B) h3 ? Selector agentSel = new Selector(Agent.class, "agentStep", false);
) K$ F; o6 V' q* O- L Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 |; W1 {6 O' D& E7 c5 `3 G
7 w" w; ^& r; K' C& e) m
actionGroup.createActionForEach$message(list, agentSel);0 q* q/ p$ \: _
actionGroup.createActionTo$message(this, swarmSel);
4 T8 Q$ y- ~: f [; o o schedule.at$createAction(0, actionGroup);
( M2 [$ }- [' I6 ]* Q, B" l4 w schedule.at$createAction(1, actionGroup);8 T! ^0 ]% z7 [+ Y0 ^
schedule.at$createAction(2, actionGroup);4 `8 m$ E( K7 U, {
( h% R! q9 ~% g& p4 Y' b" \ } catch (Exception e) {; ]1 N1 ^& q- \1 x! S x8 v
e.printStackTrace(System.err);
% _; i' ^( ]; h: C* @( _4 x3 F //System.out.println(e);
. n- p+ d1 `/ W S: h- S System.exit(1);$ ~" ?) I7 D* S) Q1 G( Q4 E+ g
}
5 K2 ^! U8 E# J+ ?3 G+ D
1 k- f, L* x* q4 y7 X
: E6 ~9 X& [: g3 N) k1 R2 n6 D }
2 z/ e: r; o; W9 B; @, d4 u8 c! ^' Q3 }
private void swarmSetp() {
) F, A* X2 c& _, h2 H2 ~7 Z! ^ list.addLast(new Agent(Id));
|0 c# ?: H* f Id++;
! h, P/ ?3 E6 P, S3 h! n }
9 Y% ]+ E( E! D& `2 b* y$ Z2 w9 K. X* c+ U* @) q6 }6 u7 h
public Activity activateIn(Swarm context) {0 t# |2 g) ^9 Z" [3 s6 ?( e
super.activateIn(context);
# ?8 r% B( T/ X7 V6 y$ u schedule.activateIn(this);
8 o+ H% H# p9 | return getActivity();
6 r8 Y% ~- k7 `% L( a& R. p }7 J `2 `& c, z) F; D
, ?- [1 C2 w. x2 ^: N+ M
public static void main(String[] args) {( p! W6 X' p/ y# e; G
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 v# \1 I. F' C% z! h Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 G& `9 ]8 z% |" b swarms.buildObjects();
3 U; W8 [/ Q6 v swarms.buildActions();1 z$ P. _ [# z; W
swarms.activateIn(null).run();, ^' B0 p; ^" \0 L
}
$ c" v9 s/ T3 y4 ]5 |1 V* N
" O: L4 m8 ]3 F9 r4 x9 Y} |
|