设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12215|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! x( Q2 H5 _" G
9 N/ X' e: N; C% ]; J8 p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 ?  l2 P) U2 _0 n: n- Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- o, B# v# Q0 l* lswarm.SignatureNotFoundException
; B  O- A* R* ?1 a& o! Q        at swarm.Selector.<init>(Selector.java:76)# M9 g% B' y0 p# g$ @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)& k: _9 N' x: D, r& \( m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, G* c% r3 P! f$ q$ ]" b
$ w0 U. X, E7 r/ Z; [2 z3 X: H9 g* ~" q- U
import swarm.objectbase.SwarmImpl;8 }2 U( U6 A7 N* z0 p+ ^4 Z
import swarm.objectbase.Swarm;6 |7 Z, P- X/ Z1 s* |* {
import swarm.activity.ScheduleImpl;
5 G' r( M- h# R; R3 U( yimport swarm.activity.Activity;
  T* h5 P" u+ E4 Nimport swarm.activity.ActionGroupImpl;
: M# H- d/ k* S. a% ~import swarm.collections.ListImpl;9 m3 X- J3 O% X, G
import swarm.defobj.Zone;
# J. O% [- \3 himport swarm.Globals;/ `2 a- e! r0 |* ^! l# r* M
import swarm.Selector;$ Y- J! {5 Y5 j; v$ }
import swarm.activity.ActionGroup;
; o) M) S0 I. ?4 bclass Agent {& @1 M7 E' t# q& Z/ c4 \1 S
        char id;  F# W" Q, h3 P
% j; N" d, Z! N8 D/ O9 p
        Agent(char id) {- [; {( |5 P4 \5 S) A* P1 R. i
                this.id = id;4 D+ u5 D0 ^, e$ s
        }
  r/ m% c( n! u0 K0 T
# v7 N; v8 A% b% n        public void agentStep() {
! D4 }% g8 C8 i( |/ n, E                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 F& h3 r4 a  j9 h+ r) N        }
9 N" ]! L/ Z3 e7 Q- m}& t( y6 @6 d! H' G5 }* Y

2 m1 d. O9 J3 [( fpublic class ActionGroupDemo extends SwarmImpl {5 w8 u: l! ~/ ~9 {2 `) t( i
        ScheduleImpl schedule;8 m1 Q4 S$ I$ K! a6 z) ~4 u
        ActionGroupImpl actionGroup;
* k9 \. ?" G  H! V! B, w        ListImpl list;6 t/ q! U2 y- \0 |. q4 M8 {
        char Id = 'a';) G2 n  b2 G* w; e
3 A5 X) }  l6 z& \9 b0 E% u
        ActionGroupDemo(Zone aZone) {
! `6 n6 I" A. Z, [4 H1 e                super(aZone);
* r% q0 d$ |  y+ d! P. V; }+ C, j$ V                list = new ListImpl(aZone);  O/ G0 y  v4 G! a
                swarmSetp();! L/ X4 V% a# h# q! k( B( N0 X
                actionGroup = new ActionGroupImpl(aZone);
5 O# ~* M4 U2 t6 Q                schedule = new ScheduleImpl(aZone);2 H* {2 t: y; `$ l2 ?
                try {' T4 u" [3 k$ P  ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! t  j7 V0 d+ I4 ?, U6 m
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( K- M8 S7 \- d) E* Y. ^8 w                        1 A1 J) w! A2 o% d7 {* d. z* B
                        actionGroup.createActionForEach$message(list, agentSel);
9 B" b, B; j8 d0 z                        actionGroup.createActionTo$message(this, swarmSel);- @- F) S$ J% Q, Z/ U5 j1 o
                        schedule.at$createAction(0, actionGroup);' G  w$ ]5 m: R
                        schedule.at$createAction(1, actionGroup);
- _4 T% G, {/ ]                        schedule.at$createAction(2, actionGroup);
# j* ~0 @) }& t% _3 ?7 D3 C+ H& ?% n
                } catch (Exception e) {
( P/ i% j, {8 U1 q6 ~0 w, D                        e.printStackTrace(System.err);5 z# A; y( c) {; V" D. ], j* C
                        //System.out.println(e);3 ]) B; h, H& y7 `' q6 F9 ]5 T
                        System.exit(1);
) \2 q5 d1 H' A5 d# W                }- o- Q, Q: v9 @1 N" h% `$ ^

0 ~+ `+ u! m6 Y# F: A9 r& U. B. e0 u0 |4 @: q$ J3 k) d2 b: ]
        }
2 t8 r3 B$ K! g4 U) i4 h( R
  j  ?9 Y' [# R$ Y: z        private void swarmSetp() {
, N- }- J5 ~0 ]5 i1 ^' s                list.addLast(new Agent(Id));8 K% c' E+ ^# }. a3 l
                Id++;
* \7 D; q* _% r1 ^+ G/ f3 p: ^        }
+ `9 }8 D7 v6 q' ~- F! O
; l# K$ }4 z5 k8 d9 j        public Activity activateIn(Swarm context) {5 v9 I; B3 z: q" g! z+ y. b
                super.activateIn(context);# ^( y& V+ m, `/ I
                schedule.activateIn(this);3 Q  j1 m, d' e% T1 @* l6 q
                return getActivity();
3 f9 L4 r4 R: v- w        }2 _$ K, Z$ I6 d1 u- U3 I

8 M  g  t1 g; J6 u        public static void main(String[] args) {
  y" B9 k" d5 s) W4 X  U* E  t$ Z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 b$ p) i4 r: d0 r
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 R0 y& z9 b2 q/ q% l! |; I. @
                swarms.buildObjects();2 B+ ^( G  G* P% L6 w( c
                swarms.buildActions();0 E7 e( }6 }5 j) m
                swarms.activateIn(null).run();5 o- s! z5 o* Y
        }
! S! q. H7 B5 C. }& U/ _- Z. ?' O$ t/ z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-2 10:25 , Processed in 0.017096 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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