设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11056|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( o. J1 u- {* A) \) f: c% T8 }5 O
. c* `; c5 H4 k. A" l5 h/ X. h; w0 E; W
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ ?* R0 z( D, X7 P7 C' c
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! o: O& F; I" G  c' e/ R" F* w
swarm.SignatureNotFoundException6 p6 H$ m2 _7 p% ?
        at swarm.Selector.<init>(Selector.java:76)
1 e+ U$ Q5 Y& n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 R5 M& [. x$ R1 k        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( g4 t/ W" Q/ x$ x5 d) ^; j( H  m0 o% V( y2 p. i& ~* W
# D/ l; b( P# s* E- r7 }' y
import swarm.objectbase.SwarmImpl;, I  H# K- s/ L5 O) Y
import swarm.objectbase.Swarm;
& F& G+ ^7 V  dimport swarm.activity.ScheduleImpl;0 y: ^, |; h: \0 Q! b" Q0 ?
import swarm.activity.Activity;
, O& W0 W+ c5 m2 B0 M6 _! T  N, Z+ [3 jimport swarm.activity.ActionGroupImpl;
& g9 `0 X  q7 K, V( T1 ^* ximport swarm.collections.ListImpl;- B- d7 o- I3 L5 D+ t" d
import swarm.defobj.Zone;   r: k% C% n! b+ y# Q' d" U% {
import swarm.Globals;$ [8 p* O9 p( H, t* l4 a2 H
import swarm.Selector;
8 a& j+ d) p4 z% a1 Q5 r: Simport swarm.activity.ActionGroup; 6 C) i( R4 k2 C* Y1 C  I  F+ L
class Agent {
/ _5 P$ w% {: n. l0 y2 b8 [1 k; J        char id;& h7 m' B4 z; ~% i, W$ V' {  y! b' F5 |
% o6 M& ~/ I3 T5 O% T: B, P7 F
        Agent(char id) {
- E) G1 t3 U  V                this.id = id;) E; h/ R' t( q- M
        }3 g3 j1 X% G- t1 y, P, b6 z

, i' E/ ^, i" G        public void agentStep() {7 s# g5 t* D; W1 u
                System.out.println(id + ":" + Globals.env.getCurrentTime());, E  S$ A" S- I& Y5 A1 D8 Q  g
        }
: F: a; v3 K' J$ \}
/ P3 n2 @+ n5 n1 l8 V8 j  u; n  K% h
) _; t# I5 g9 k) Lpublic class ActionGroupDemo extends SwarmImpl {
) J: K3 r( N- @. F% _+ a, A& H        ScheduleImpl schedule;
1 R9 a9 U, x7 H' i: r        ActionGroupImpl actionGroup;# C) I/ {! g# {9 X& K( u" `& d
        ListImpl list;  H( q3 [5 E/ K( c$ c
        char Id = 'a';/ ~. X6 d( p9 x/ I) H1 C7 T

7 l* t1 e5 ?* }3 w$ H1 {" M% d4 j+ w3 O        ActionGroupDemo(Zone aZone) {$ b; d9 W- l0 U7 V
                super(aZone);' b2 k1 n6 ?5 R- G" O
                list = new ListImpl(aZone);
3 l$ {5 S3 A7 r! \; Q5 k                swarmSetp();
4 o7 @9 r2 t( f! P: w  j                actionGroup = new ActionGroupImpl(aZone);$ L4 O) d8 V* B! H/ H" T( r
                schedule = new ScheduleImpl(aZone);4 }- Y2 x( Q0 `6 w1 G
                try {6 k2 X, P0 Y( ~3 I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  r" O3 n8 [9 M0 w9 b0 N9 [0 j' |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. B+ J% i3 X( u( {4 r
                        
, R) h- ^7 ?- S* v6 N$ c/ e7 R                        actionGroup.createActionForEach$message(list, agentSel);
4 q3 U) H7 z) F$ n* w                        actionGroup.createActionTo$message(this, swarmSel);
0 S, ?3 O; a; k% N9 t                        schedule.at$createAction(0, actionGroup);5 y) Z+ ~* b# w. w5 s
                        schedule.at$createAction(1, actionGroup);
( X) j3 a9 a! V# U4 Z                        schedule.at$createAction(2, actionGroup);
2 Q/ Z# ]6 q. Z* s7 @3 u1 y  }( [2 ~; x( |+ k
                } catch (Exception e) {9 W/ J* S5 x7 p- N3 ?7 M! |
                        e.printStackTrace(System.err);$ U; Q- O( ?8 @/ p
                        //System.out.println(e);! W# D& M7 z2 Q% d
                        System.exit(1);, X5 C- M6 @5 T; y, r
                }" H- K8 f: U7 J. T% i
, F3 K7 b8 t: N5 h. b

1 V' `0 \. \4 e1 G8 ?$ a% e5 j        }
; G0 }( @; E/ z& Q* a7 L3 |6 @  F
/ V2 n2 ]' ]! X% k, d- z        private void swarmSetp() {
6 O' \* _, A: y3 F, g2 D2 D                list.addLast(new Agent(Id));
1 X0 W6 x+ o1 g  V* G                Id++;7 L: a, l+ S2 F; l: ?& [+ i
        }
+ p$ H/ ]6 h0 z; i6 M
/ i3 p: b/ o, @9 l5 O9 p        public Activity activateIn(Swarm context) {# J: K) q: ^+ j3 j0 f3 ?3 t+ O0 L
                super.activateIn(context);
- n( y* \: \( G7 c# m                schedule.activateIn(this);
* b6 I) D1 b* w# Z; ]! {0 L: q! a                return getActivity();7 a! S! M/ j# \! S; V
        }0 y7 J4 b3 }! n8 @8 a( |7 D7 D6 J: o

9 R. l. X8 |7 [3 ?& f' P5 i; J; W        public static void main(String[] args) {
: G. r' _+ W- y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 Z6 Y2 f* ?, j" O+ H" M5 G                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 t2 ~9 e) Q* {  h
                swarms.buildObjects();% k# v2 Y1 K6 O
                swarms.buildActions();& w- L7 C$ k" p3 `
                swarms.activateIn(null).run();: f1 p/ N. f% f* ]3 _1 k
        }$ I9 k; D$ a, u' y! @# r- l# `& t
3 P, K3 T' i, P& O1 _/ z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-7-1 17:18 , Processed in 0.021007 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表