设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7405|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" k( A! z  ^  A5 i6 H8 I1 A' D# p7 `- j& `3 z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% y& g# G0 a) d2 Y; N" v) Y+ K- K以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 b/ u5 Z+ y. H8 Y) L1 A& \2 W
swarm.SignatureNotFoundException7 B& Y2 }7 o& J3 q9 z
        at swarm.Selector.<init>(Selector.java:76)
4 W5 s0 f9 j) \" @% i8 e! M( n. U4 Y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  ~3 G0 H- N$ M; G8 u; I        at ActionGroupDemo.main(ActionGroupDemo.java:67)- a- U/ n) ]% c# e" r- w
- e3 V- l+ a8 o" \0 t. b
4 D' M# [. Y: s( N, \/ ?9 N& ^- s- M5 W: j
import swarm.objectbase.SwarmImpl;3 m' A, F( D4 j, ^# q- ?3 V5 m
import swarm.objectbase.Swarm;0 |/ d; r. l6 A& R- j+ L
import swarm.activity.ScheduleImpl;
8 P9 D( B5 y' w' p2 Y7 Iimport swarm.activity.Activity;- X: ?+ W" Z6 ~1 @4 ?& P& a% y9 ?
import swarm.activity.ActionGroupImpl;
. @# k# D! _, b% w( w6 f, g8 C" f% eimport swarm.collections.ListImpl;
8 \8 y6 e6 N0 L3 X: j( L/ C7 _import swarm.defobj.Zone; - R! Z8 r1 I( g: b
import swarm.Globals;
" R2 t0 `6 F( ]7 Simport swarm.Selector;" [* n' ~0 ~; \0 D3 q, m
import swarm.activity.ActionGroup;
. V# ^, V$ ]8 L- yclass Agent {  s$ m) s, B. P) V- [
        char id;
. f* o8 M, v- f( v4 U9 a
# P6 @; U0 w0 E2 B  {+ a        Agent(char id) {
( P, c: g5 f8 u7 D                this.id = id;
7 o% u; x5 ~8 T% N  y( b        }; ~2 X+ }' _- S5 S: X; y% c
- B3 m- K2 x8 f% B3 s  z$ e/ d- ^! U
        public void agentStep() {
( r) ?& o$ q' j5 V3 H% i  |. [                System.out.println(id + ":" + Globals.env.getCurrentTime());
) r$ C( v7 Z; M# c" k: Q        }& X, O/ l0 d( w2 w& h$ @) p7 }3 M3 s; l
}/ \- P- t0 A) G; g% s, v

; _$ Q$ w( ]  a9 Cpublic class ActionGroupDemo extends SwarmImpl {
) ]' ]( \7 U: F6 O+ M+ Q        ScheduleImpl schedule;& m* z; ^2 H2 A& \
        ActionGroupImpl actionGroup;
7 c9 a  g3 F  m; ?# x+ j8 Y% J        ListImpl list;
+ f9 B0 G7 @. |; r3 C        char Id = 'a';1 d+ v. M" a$ n+ b3 G

& N' R) ?  G# {% E        ActionGroupDemo(Zone aZone) {
/ b3 N  k% o( h1 r                super(aZone);
$ {- s$ Y" S1 b( v' \                list = new ListImpl(aZone);
) @- K& q5 H/ p% Q7 b1 S! I( s7 q                swarmSetp();8 r7 t! o$ W* }; L: s* g
                actionGroup = new ActionGroupImpl(aZone);/ o5 L+ o: v- r+ L* J
                schedule = new ScheduleImpl(aZone);. A9 m- v- ^2 }: C' N7 g9 J
                try {
) b3 [$ S% g1 }' M  m' M+ G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- g- u% q  ~2 F, G
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 M# i* o$ I( \0 |, N4 T6 s( \+ r                        7 B& [, s5 b3 r
                        actionGroup.createActionForEach$message(list, agentSel);# ]' y5 M1 H" `6 V; |9 h8 l, l  p! _
                        actionGroup.createActionTo$message(this, swarmSel);4 B4 w7 Y& K% i3 i; U" A7 I
                        schedule.at$createAction(0, actionGroup);2 q) {' |2 E+ r5 j$ E. U
                        schedule.at$createAction(1, actionGroup);
. K3 {1 l8 z# j0 O6 D/ o' u' c- X                        schedule.at$createAction(2, actionGroup);9 {: |9 A5 D+ o. |: [0 }- l8 |

/ K" Z) \, S  o; t                } catch (Exception e) {% K7 P: b9 U$ m( M; M( V
                        e.printStackTrace(System.err);$ O& v: U; \* j3 r$ S
                        //System.out.println(e);: T2 s/ s; @6 ~1 o5 |
                        System.exit(1);) z  ?' F$ _) h: Q" V
                }$ u6 F0 j  y+ g

! p* F4 |3 u/ {+ Z8 q) k' J3 p% M" y/ G; s
        }
  x# l6 u2 n& f* E7 p% ]$ O+ d2 m( Z" L% c8 U% O* I' p
        private void swarmSetp() {- u; F! K+ \6 o% h8 ~
                list.addLast(new Agent(Id));
/ W! _/ [1 w" I. G% P                Id++;8 }! U7 u) D/ }( K  G5 y# o7 ]2 Y1 [5 R
        }/ @/ P( X7 T" U5 R# c- E

; q' M) k7 ^8 g        public Activity activateIn(Swarm context) {
9 M# g  T. e( U6 f7 k3 `5 M6 E) N+ x# |                super.activateIn(context);& B6 h5 J1 @3 S! {: _
                schedule.activateIn(this);% v0 E  c  f+ q
                return getActivity();) I5 ]+ ?# O1 c& N5 ?, t8 H" K
        }9 J, G7 n8 {, V5 D. Y! r/ j

- L2 F, @! I# m' n+ w# r        public static void main(String[] args) {
8 w: q# J" l0 `0 e( U                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 D2 H' `$ ^3 V" m+ s3 i, V$ Z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 d7 }4 {7 A5 W- o9 g* f                swarms.buildObjects();& L* K/ w8 f7 Z* }8 G  j
                swarms.buildActions();3 _; S  G! k) k% I" n2 E
                swarms.activateIn(null).run();
1 N* e0 \1 W4 O2 i' r0 V        }
: R" x3 O, f7 u" K, v4 x4 n( O+ j  k% k' p- l$ q. }% k" t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-1 10:38 , Processed in 0.015731 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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