设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11082|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ E; U3 K' Q% F) C* a5 X5 m! I7 e1 {& W5 f  N/ C8 G
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ e1 I* O3 F) Y* Z7 X: k/ r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" E! d# t; S( d" t4 V  O( p0 ?$ ~swarm.SignatureNotFoundException
# ?, a: N5 k( t        at swarm.Selector.<init>(Selector.java:76)
6 z5 z- A1 K+ K        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. }& y  q3 ~7 Y        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 m) \2 k* I& x
& |/ @# w! k/ m, u8 S
# ?( f9 M1 R. [" P
import swarm.objectbase.SwarmImpl;
9 `& A1 H  T# d7 T2 ~7 k6 Uimport swarm.objectbase.Swarm;4 n% E# j5 n3 z# x, a% X
import swarm.activity.ScheduleImpl;1 {$ X3 [- N- \* H+ g1 W& b1 H
import swarm.activity.Activity;3 B+ S3 R% T$ z8 f7 D
import swarm.activity.ActionGroupImpl;
: q/ s; D- v0 D  Iimport swarm.collections.ListImpl;7 p. [0 }2 O2 D+ y. r1 A
import swarm.defobj.Zone;
/ h( t$ Y; z% e5 Pimport swarm.Globals;  f! r) `, D' Y) s% }; E, Z5 P3 ^
import swarm.Selector;
# w" C4 l; n# ~* P# ^0 n& |import swarm.activity.ActionGroup;
9 A# O2 p8 ^2 p1 I5 o+ h9 vclass Agent {
) O9 Q% J: b. S$ [* w        char id;8 X' ?& h8 B& @" a$ ^0 y0 X, u$ T- _
4 g& _" M: ]8 v1 G
        Agent(char id) {
1 Q+ R4 y, x$ h8 E0 ]                this.id = id;  d; E: r2 f# O3 `, P
        }- m+ G2 v: V+ |
' R: r5 [5 D0 r" e. |8 z: S
        public void agentStep() {! p5 K! R; t6 |3 x% K- c9 K
                System.out.println(id + ":" + Globals.env.getCurrentTime());  y1 }/ d- p" \; [
        }
: F4 C; T% P+ O; s$ p}
  v3 N: f0 P& c+ u. i, Q) a) l2 C+ f+ D+ p- P6 e4 r) L1 p( g
public class ActionGroupDemo extends SwarmImpl {
5 z. S: z- ^( o! U2 l- T4 e' `        ScheduleImpl schedule;
5 d. y  Z% Q: {# [; D6 U" ~& o, u        ActionGroupImpl actionGroup;
+ T2 O+ s+ K0 g# Z3 g9 M4 A        ListImpl list;) F3 z# y$ ]1 w) K- d4 g1 S& |
        char Id = 'a';( i, [+ y4 ^5 u: {" a+ r
  z( k$ T5 S- o9 D0 Y! _$ R
        ActionGroupDemo(Zone aZone) {
: z* }: ~6 p3 L# f/ X                super(aZone);3 F; Y3 a; w( n0 s- N& b9 q
                list = new ListImpl(aZone);* m( k& Q- j2 F$ r: E5 @6 z
                swarmSetp();0 W3 Q5 Y& O2 Q! n. [
                actionGroup = new ActionGroupImpl(aZone);1 X" g9 n! Z' n" u- \
                schedule = new ScheduleImpl(aZone);
3 K* M1 y  r% m0 z5 }, d                try {
3 `. M8 F/ x: ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 K3 L0 P! ]% _; b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: u& N8 K% Z8 i  ~8 F/ A6 B                        9 R, H) y4 S/ B3 `9 I7 t  M
                        actionGroup.createActionForEach$message(list, agentSel);
) d( w) M+ a- K: U1 ], N! q                        actionGroup.createActionTo$message(this, swarmSel);4 U* g) C) Q% \+ B2 _- q0 U$ `
                        schedule.at$createAction(0, actionGroup);% y# J1 S5 F* r1 a3 \
                        schedule.at$createAction(1, actionGroup);* c; V" i2 z; ]1 i4 B' g/ v/ [8 g
                        schedule.at$createAction(2, actionGroup);, b! [5 h9 i( U+ k* z5 ^. |

! M" d0 @: g$ g; ]+ \9 z                } catch (Exception e) {9 l# z: w( b5 J
                        e.printStackTrace(System.err);
9 y$ H6 b9 j: P' _8 r9 M; g4 X# i* ]                        //System.out.println(e);" ~4 M; B9 Q( ]8 V, ^
                        System.exit(1);
7 ?" s( [, V4 J/ K! t  ]4 O                }
7 Z9 N9 p' }4 A: l
) {6 g' ^. e* M. ]7 i6 w$ R6 B! @! y, g- d5 e/ w
        }
7 a, K/ m4 f7 a/ C  X4 p5 U& |9 X" s+ a4 t+ t
        private void swarmSetp() {
5 r( x7 K7 c, ]1 o                list.addLast(new Agent(Id));
0 q) S% X# U* b8 Y7 N4 I                Id++;" x. O: d) a: v) G% U  S. K
        }0 k) d7 e. ]1 s5 q7 h/ ]
6 a$ }$ ^3 l6 q+ D  L8 W
        public Activity activateIn(Swarm context) {8 R; x) M6 p/ v& M, x
                super.activateIn(context);6 g5 y/ G! D3 y  e* V, z
                schedule.activateIn(this);
& l" r; {( i( y+ S) Q2 @  r                return getActivity();1 c' O! G0 F7 \& F% w8 G, _
        }3 A0 q4 L$ E' F# F8 G5 G  R
: e' ?2 n# l/ k
        public static void main(String[] args) {
$ ~) O- q* C# q# n, r' g8 ^                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' {! s* z0 _+ a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 a* W5 q. p8 Z, `4 \0 s" X2 z                swarms.buildObjects();, A$ m) D9 y8 b2 R: h1 H
                swarms.buildActions();
, O4 N9 t. e. I( m2 R% r' u                swarms.activateIn(null).run();
4 Y) T6 @* K7 w; `% j/ R* c- m6 a        }
' @, |8 @3 l7 U2 D* m& E" A& T+ m
) Z+ K( R  w1 e* q0 b}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 12:23 , Processed in 0.014608 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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