设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4734|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 R1 V! t5 |: n; }7 Z- E
4 e) ?- E$ _: K% M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ k0 R2 i# F) m. V6 w: B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 {' Q8 {) l7 t& u0 k3 z
swarm.SignatureNotFoundException% i( `/ v" b# a" l' s' G: n/ |) z
        at swarm.Selector.<init>(Selector.java:76)7 F, F! R8 }$ B
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 Q9 O: M# k3 T1 V5 Y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 |$ \  ]5 I7 G2 o8 r( l* a

. ^2 W+ }; @% w" J+ U. v$ j% h2 c& v7 ~" j7 n
import swarm.objectbase.SwarmImpl;
. e, S- u  ^1 ]6 Qimport swarm.objectbase.Swarm;$ V. ]  g# l2 y' U+ s1 b
import swarm.activity.ScheduleImpl;* J. ]0 i1 g: l$ V  W
import swarm.activity.Activity;
% [0 H8 x* X9 N) F0 h/ L) J/ s9 q8 ?, Uimport swarm.activity.ActionGroupImpl;
" _9 Z6 C" E3 N# i) c% Dimport swarm.collections.ListImpl;
- D- ?. F. c4 q: T- t: O4 K( l! aimport swarm.defobj.Zone;
3 @! E. T& B+ E0 _( ^import swarm.Globals;, D) E7 y7 F8 V& O' [
import swarm.Selector;/ U: P6 x! }- V+ a: x6 P
import swarm.activity.ActionGroup;
/ z4 g$ X0 e" Z: L) I) l( g- sclass Agent {
1 A6 `7 s$ d5 x8 |% A6 t        char id;& z% Z4 \" u5 G' ~
7 V" s: W/ {6 E5 j) o' E6 d
        Agent(char id) {
5 X1 N" G; s2 U: Z' h                this.id = id;
7 O5 T* Y7 D' S1 X" `% J        }$ _0 b+ F" S& ?  Y; f& [8 r, h
# _! T6 r! j# z1 \& M( ?5 Q3 ~
        public void agentStep() {4 M/ g  i2 J" \2 _# n3 [
                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 Z* j3 A4 V# C: k8 [        }
/ F# f! |  n1 x7 F' [6 m}
, a; ~: K. \( s5 P. H+ E$ R, M6 {
  S/ ]) z% m% l* i0 npublic class ActionGroupDemo extends SwarmImpl {- B( V; ]# u8 Q/ a4 O
        ScheduleImpl schedule;& `  A! _* K* H9 p5 ?, J' e
        ActionGroupImpl actionGroup;
3 C, H3 P" Y) t        ListImpl list;2 V& [' u7 }7 g* N
        char Id = 'a';
- [/ y$ q# g: Q6 v9 Y
2 o7 V1 }4 t8 P" S+ t        ActionGroupDemo(Zone aZone) {
& R* J! p. X7 O* o( |: I                super(aZone);0 Y% D( v9 a0 \- O  f$ X1 Y8 f
                list = new ListImpl(aZone);4 p% w" b2 }7 c+ v/ v6 U1 V$ f
                swarmSetp();! E5 ?" _4 k0 A6 B( C
                actionGroup = new ActionGroupImpl(aZone);" r( v" D; Z& a& M% `4 s! C
                schedule = new ScheduleImpl(aZone);8 c, Z1 Z8 e* g9 C9 v
                try {
) d' o* x9 P5 a2 N9 @+ e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! o; \' p9 s$ S( A+ U6 Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! a) k. o9 s- L. `+ |
                        
- X5 Y8 N& C' a                        actionGroup.createActionForEach$message(list, agentSel);+ d, b) b( L3 s( R; T5 a+ l
                        actionGroup.createActionTo$message(this, swarmSel);
9 h/ Q! O# Y9 v$ s                        schedule.at$createAction(0, actionGroup);
2 t# E  W( O* Z. _* g. p* Q                        schedule.at$createAction(1, actionGroup);
4 N6 o6 F/ }  C3 J1 \                        schedule.at$createAction(2, actionGroup);+ D7 Z! z* j! [% }

- O+ `' a& K( Y% F: t                } catch (Exception e) {7 [4 |; D5 b9 O- i5 z* k0 U0 [/ m
                        e.printStackTrace(System.err);
" {% T6 }$ `  t                        //System.out.println(e);3 u- t; V0 E1 ^" R' k4 @  ~
                        System.exit(1);$ p2 |: ^3 y) K3 m7 A8 b
                }
. T) z; e+ K: O* n' X4 g1 U
; z8 e! H* e) V9 M7 Q$ x$ {5 \8 ]: X, C- w; H! E
        }& J6 B1 F2 W- }2 j2 F

1 l5 o1 n& p% M: D3 E        private void swarmSetp() {
" u9 Q+ q/ d) F- v2 V3 u1 b                list.addLast(new Agent(Id));
% c; w% r: k' l# F# V, Z                Id++;2 ?9 `( B. d- M" D6 h0 f4 R
        }4 r: s. Q) R3 _+ V" j& ~

, M$ F. [7 u5 y8 v        public Activity activateIn(Swarm context) {) _) h4 X/ p: e! p) n
                super.activateIn(context);
$ V, i5 E9 N& x! }                schedule.activateIn(this);
. z" e0 X0 I/ m4 M* z: o' G                return getActivity();
9 H  |2 `9 I' s) O4 u% `/ T3 B8 M4 n        }, N, ^" ~! R1 o$ S, ]+ n- Z
& k( u5 g" j* Z0 }) q+ @
        public static void main(String[] args) {
. x2 u3 d' L3 r, @  Z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 A" y! Y) |" A+ l9 }% n                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ E3 {3 F, M* B6 Y
                swarms.buildObjects();- Z! e. u6 j9 f+ U
                swarms.buildActions();; m, F" R) v4 H1 }
                swarms.activateIn(null).run();
3 c* c- b0 }  L: h        }7 v) r% w/ k4 P2 Q
7 K9 }! Y+ U7 t: _) p3 a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-9 10:50 , Processed in 0.019189 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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