|
|
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 q$ r# r! h5 a+ |3 l: D
2 G# M; q' d5 `5 r+ s: O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 N0 q! t" r- ?+ B7 Z5 F) X9 u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激. C8 a- x4 |( b6 H- W* F0 z
swarm.SignatureNotFoundException- ]2 s! z4 t, Z
at swarm.Selector.<init>(Selector.java:76)
+ \$ l# ]! e8 _ at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 D7 f4 t+ g+ W" M% R+ F
at ActionGroupDemo.main(ActionGroupDemo.java:67)) E0 _5 @7 B2 l2 g1 N
* B8 ~5 ~/ t! ?' J' f
! r$ p N4 ]# H# A+ ?6 x
import swarm.objectbase.SwarmImpl;1 l$ @+ a, [- @6 I1 y' |% x# g T
import swarm.objectbase.Swarm;" h8 m- h c' [- F8 B
import swarm.activity.ScheduleImpl;
1 ]8 J9 y, U( Z9 K, {import swarm.activity.Activity;
% M. y$ E% U8 L1 d. X& Zimport swarm.activity.ActionGroupImpl;3 ]6 l3 d5 A) L; K
import swarm.collections.ListImpl;
/ g } T9 X& b: c4 Bimport swarm.defobj.Zone;
# g) r! ^+ X: z' G0 [$ S! q) Fimport swarm.Globals;
8 F! W" K, D4 J4 {8 u+ c. dimport swarm.Selector;
" W2 F4 N" S) {3 ]8 p( ^! |import swarm.activity.ActionGroup; 5 Q4 q H- Y, C# {- ~; J$ I
class Agent {; ]: e. r% {8 g/ K# |
char id;
- h2 C; U& Q! Z Y p) C
1 _0 ?0 @) Z! P0 h6 |+ Y. m/ ~ Agent(char id) {
) g- A# t( t( s* x( R this.id = id;
, ^/ n2 O5 L, r- |$ ]% b }1 b4 _! Q/ R% X4 n! S! A9 N/ t4 `
2 t: G5 v9 ^ O6 w( h" I public void agentStep() {; e! T! `( f- |# s6 v
System.out.println(id + ":" + Globals.env.getCurrentTime());' f' r5 X& j4 U
}- ?: ?$ F% w' i5 r9 r2 c$ h
}
: v+ Q/ q9 K# C' G K
/ A# U9 C2 k7 _2 u) wpublic class ActionGroupDemo extends SwarmImpl {
3 {$ `/ `4 d1 ], ]1 Z( A ScheduleImpl schedule;- U4 J, z4 n, ~7 c) y
ActionGroupImpl actionGroup;1 P2 C2 c& ~! ~* V% h3 s7 q; b7 |5 T0 _
ListImpl list;3 S* I# R( _6 W% s
char Id = 'a'; I @8 W* P' D& n% A! R
; S$ z5 {+ i# G; l' c ActionGroupDemo(Zone aZone) {: A8 F& z* L0 c6 ]. D' N7 g1 i
super(aZone);
8 ?/ B" V. h9 u list = new ListImpl(aZone);, I" Y5 t3 R3 m1 k* l
swarmSetp();3 n8 {. j: G( D _! [5 i
actionGroup = new ActionGroupImpl(aZone);
+ p; T. o7 e: ?# ?1 I- l schedule = new ScheduleImpl(aZone);
1 s* b$ X- }# x8 } D7 y+ Q try {
' l/ N4 v2 s& t; v' B+ T Selector agentSel = new Selector(Agent.class, "agentStep", false); r4 ?+ M* L n9 K; O) Y
Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行 X! e9 x9 K" | T
% N8 P' q( f9 K7 ?. O
actionGroup.createActionForEach$message(list, agentSel);
6 \- `2 h! N8 |, [9 V' O actionGroup.createActionTo$message(this, swarmSel);
; K. ? g3 ?4 { schedule.at$createAction(0, actionGroup);* }! `- M! b( e, z: o
schedule.at$createAction(1, actionGroup);, P/ e8 E" ^0 a4 W* g
schedule.at$createAction(2, actionGroup);3 Z! f- R7 s* I
. J' b! r$ b9 d! }
} catch (Exception e) {
- i+ C$ u7 M/ e. C2 v e.printStackTrace(System.err);
$ p- g7 K4 C Y8 b/ F8 @$ [7 }* x //System.out.println(e);8 D3 g% m' y) V$ o
System.exit(1);9 L/ B: A1 Q+ r+ ?
}
2 y4 H3 W0 ^4 u7 L. h/ H) W4 [
8 |2 |9 K N' O; F: v) f2 M5 M9 Q- W
}. H+ h% @6 e, _. I9 c
0 Z% K4 Q7 | ?9 D6 r" u
private void swarmSetp() {
" B8 z4 @% j" j# U$ k2 S list.addLast(new Agent(Id));# o. y0 R [ f! O9 U+ _) Q6 }% p/ a
Id++;4 |' Z* a" X2 Z; I
}
5 n( l0 E/ @, ^- [
( F/ L3 t- \3 z! a/ z4 B public Activity activateIn(Swarm context) {
* l( {9 U. X7 Y6 B+ Q+ n super.activateIn(context);! X6 m4 A7 ^+ b8 D! w
schedule.activateIn(this);
: x9 Q# Z& i+ R return getActivity();
- g! f9 G& Y7 y' r }
8 `8 ^, D5 n0 k% @, z7 r- C q' m, }3 Q3 i
public static void main(String[] args) {/ v, S% p# c$ ?' P
Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ ^6 I: {/ y( w) ~8 J Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. ?' p: p" h) @3 @4 S7 X
swarms.buildObjects();
9 T, I8 c( f( A7 A, Y2 x swarms.buildActions();
8 a+ x% { w1 V9 ~& l$ s* G( | swarms.activateIn(null).run();
: T. M. Z7 R3 S- M& R }
( o% L& G. }# G z6 p! z- W
9 s% L% D0 p/ X- H4 e. A} |
|