设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6222|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 w  Q+ y& A- Q1 r% N2 ~4 `9 g
" G2 d! `. c) O- I' l4 W1 d6 V1 o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
" {: V- }# D6 l0 [6 G; r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 u) b3 w2 f5 h( C$ M0 `. ?$ I
swarm.SignatureNotFoundException
) P% M' s% s7 z5 }0 q        at swarm.Selector.<init>(Selector.java:76)4 _4 g  e( z) A" Z( u' p: x# ^
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 X0 A# w; M' U* D/ u% \* k2 }        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ ^2 k6 \7 X/ T$ H6 j6 D
% P# D9 K+ p$ Z' [3 Z9 Y& n, {
" P2 A& t# w; x% j; b, ~- S, r3 Dimport swarm.objectbase.SwarmImpl;
! K" s/ H" {$ h. S! x% F4 iimport swarm.objectbase.Swarm;
, N( p0 j0 c1 g% m6 j) pimport swarm.activity.ScheduleImpl;
$ r5 _- v2 X% Aimport swarm.activity.Activity;/ g% k& W' v1 W8 u& m
import swarm.activity.ActionGroupImpl;
3 G% e; w3 a6 y9 G1 @; S) z- P6 q$ oimport swarm.collections.ListImpl;
& o; V2 e/ t  ?% timport swarm.defobj.Zone; 3 P5 ]) m  X7 E! k5 q3 s
import swarm.Globals;
" J  f, e# e  H/ Mimport swarm.Selector;
, z- @! ?; {$ v/ A7 ^import swarm.activity.ActionGroup; " p0 B+ y/ d3 S+ Q- P' e
class Agent {5 y( }5 o+ d2 ?3 g: D, e# H7 G
        char id;9 \# }$ Y7 e: w6 e! }' `; B! g

4 r. k! Y; [# F" o        Agent(char id) {. F; ~" w0 P/ e6 R
                this.id = id;
# Y  k  u# U) u* x# |! i# K+ W        }
3 n: W; j+ M- H  R; N6 `9 T  F
. V2 \' f$ B6 E        public void agentStep() {
& V9 i6 k* g" [9 }! d                System.out.println(id + ":" + Globals.env.getCurrentTime());$ d! |1 _! ~1 v8 A; Z' H) q+ U9 d& C
        }
- z% |7 H7 L! `1 z( b" Y$ z2 n, I}
; L& U- M& o5 P$ V5 a% \, R0 x8 W/ x$ U  A6 m+ g5 S
public class ActionGroupDemo extends SwarmImpl {" H! b; o5 D) t% M) x! B! K* M
        ScheduleImpl schedule;2 {8 I! m6 C/ C* x# n5 f
        ActionGroupImpl actionGroup;
1 y8 G0 k" `% c/ q3 t) F        ListImpl list;
5 w# e6 D, l7 N' f        char Id = 'a';
  L; F( N6 b7 V$ J, v
( z. C/ j/ w+ @- }6 K  N3 Q8 d6 w        ActionGroupDemo(Zone aZone) {+ S- Y8 J( Z) N  f( c0 \, t
                super(aZone);
& [$ v' V2 h4 H8 e  H5 u                list = new ListImpl(aZone);
# e9 V0 e* P6 t+ ^* X; Z& ~                swarmSetp();
: M% F, m2 F- A" G# [' ^. o$ ^  Z                actionGroup = new ActionGroupImpl(aZone);
* s% }$ {! a' V, k: |& N# L                schedule = new ScheduleImpl(aZone);
* ~6 h. K$ P8 C: R( o% ^                try {' P9 T* k3 ]% q  {& Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# f0 ^7 c# a* D( z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# u; d4 S, T/ F
                        * e  Y) L3 ~; D1 H
                        actionGroup.createActionForEach$message(list, agentSel);  p! j/ K8 Y0 Z) g
                        actionGroup.createActionTo$message(this, swarmSel);
- r, F$ T" ~0 o" v' `  A5 B/ s' a                        schedule.at$createAction(0, actionGroup);
& t; [6 ?; a1 Y0 }6 t& c! |                        schedule.at$createAction(1, actionGroup);! K+ Y6 i( s7 V& x
                        schedule.at$createAction(2, actionGroup);
& V+ y; g) v2 `7 t5 r7 f4 g; c9 Z
- j' n- z9 C3 e( m                } catch (Exception e) {
1 U2 v+ U- B. t+ o                        e.printStackTrace(System.err);) d7 e4 ]4 Q! \' g6 Z) E; q, A; ?2 V
                        //System.out.println(e);
" w" p5 N9 Q& K+ r                        System.exit(1);6 ?3 E+ [6 s: t& f3 F
                }
& H4 x2 ^' p2 |* F+ B& }" E, ?9 a" y. S( O7 }6 b/ @) J
# w9 S: f& ^  w% u& S
        }3 \- M3 Y( b9 J3 M+ S# ]2 R  L' d

4 d: c8 `1 h+ F! A5 L6 w        private void swarmSetp() {& R" l8 G, l/ t- k9 |1 c
                list.addLast(new Agent(Id));
5 `; q2 Z& G3 ]8 F; G                Id++;
, Y2 n9 c: |' v: E        }) [/ T# T3 k- U/ x( E/ E

4 }8 Z" W3 j6 X        public Activity activateIn(Swarm context) {
8 A# N, N$ f% n. V% h! ]                super.activateIn(context);
( T7 x9 d- Q1 a5 L! i                schedule.activateIn(this);0 i' o) D% {& B$ S
                return getActivity();, Y" c- N, a- r6 ?5 u# j
        }
8 g- ]" L! k, L% n) I; n& E
- X! K0 S& ]. ~, t; N( O9 M3 R        public static void main(String[] args) {
/ Q+ F4 z  K0 X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 C: T  s6 v* k+ V% f3 R
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% ]: C: H. U( e- X
                swarms.buildObjects();7 k' B5 H/ k, \: w& i, ~" K
                swarms.buildActions();2 c6 k1 r$ |, Q' }
                swarms.activateIn(null).run();' R7 I1 c; |$ A2 I
        }
' j( ~" \* t; h4 Y+ ^
7 e& I& l, F3 J# p7 h1 Z: F4 \}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-21 19:56 , Processed in 0.018318 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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