设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7434|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * M9 v) O2 l0 @5 S6 a
, A  b9 O$ {2 ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# S" o; U' y' M: a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 _2 ^/ Q5 Y6 `4 h- h# H7 \
swarm.SignatureNotFoundException
# T9 u- ?" c, |( D        at swarm.Selector.<init>(Selector.java:76)$ i4 |$ c% U1 D! M, {& j" K/ v; P
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' q6 _2 N' r7 s
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- b# X8 k' Y+ T, z9 q

3 u( P  k4 G* [3 W0 w- t% g" z+ o# i1 M! k4 F
import swarm.objectbase.SwarmImpl;
: ~, M4 {7 X* o' qimport swarm.objectbase.Swarm;" Z1 y7 L: y" S0 ?2 I
import swarm.activity.ScheduleImpl;
" u% g' G  j( y3 Nimport swarm.activity.Activity;
( s3 H; p( A, _- _0 W- qimport swarm.activity.ActionGroupImpl;
. Z0 H5 g+ I5 F% e) t+ `import swarm.collections.ListImpl;
/ m+ r- V' R: iimport swarm.defobj.Zone; ( ]6 u8 t1 e' b' K3 L/ ]) J* G$ I
import swarm.Globals;, z* z. f# t7 l3 h1 [3 t
import swarm.Selector;+ H. @$ a! ^; x3 [0 R' g
import swarm.activity.ActionGroup;
6 f( _: u% ]# p; o% Nclass Agent {7 _4 B0 s. p7 t- d# x* Y
        char id;
" x" N4 Q6 ?; n3 f0 D, |# P* \) G9 o  t2 V/ X/ ^$ F; j9 e
        Agent(char id) {
. l2 }' m% u' ~# n                this.id = id;
0 D% g! q0 A) g0 s( Q        }7 s. T+ s* ^" [, e% p9 v

! e9 {7 P) ~6 P7 r& Y0 u        public void agentStep() {2 i- g" _; X3 F1 b
                System.out.println(id + ":" + Globals.env.getCurrentTime());3 V+ u7 R( Y- @7 Z
        }8 }% l' P. u' H3 Y! m$ T. |8 B
}1 ~3 ~  d, B+ G% e9 a# k

3 X. v" X; z- s- ~public class ActionGroupDemo extends SwarmImpl {9 O7 o3 X. [1 l' h# B5 o
        ScheduleImpl schedule;
( J5 p- r! w6 N4 f# G. l/ D4 o7 q0 B        ActionGroupImpl actionGroup;
# k% D6 a/ s8 K! U8 H6 E/ f        ListImpl list;- t: A. X! a& v- U
        char Id = 'a';
% U/ |  E! E& T) l- s  G2 Q& {" @; ~' g! y) f) M  \: A
        ActionGroupDemo(Zone aZone) {
5 A" x0 [) {6 I8 T" {* c' x                super(aZone);4 B( x# q( o3 l
                list = new ListImpl(aZone);, f/ M% C5 ^" h% v$ O" n
                swarmSetp();
4 N1 E) }  e8 K; v/ S                actionGroup = new ActionGroupImpl(aZone);6 ^  \$ q% _$ j' V, r
                schedule = new ScheduleImpl(aZone);7 u2 w$ U& _' X. _
                try {
- T2 k7 t7 v" m* {" a1 i; C2 t" P                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! Y. ~+ P5 Q+ Y# L# Y7 f' s/ p# W8 b
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
1 p3 ]( U: `) Z+ ^                        
3 T0 _1 ~# m) J$ ^+ N, o7 ]                        actionGroup.createActionForEach$message(list, agentSel);- p  r9 j: z7 ]  D( f
                        actionGroup.createActionTo$message(this, swarmSel);
" i7 J; o; k1 E. H7 N                        schedule.at$createAction(0, actionGroup);
/ n9 A$ t1 {* b0 X& }2 F                        schedule.at$createAction(1, actionGroup);& O5 `0 l- {8 z
                        schedule.at$createAction(2, actionGroup);0 N& J% M& E. U* `7 }' R

6 S  J% p' i" ^                } catch (Exception e) {
" x, ]0 ^" O& w! h( U4 K2 N                        e.printStackTrace(System.err);# |1 X! g# q. b+ J+ D2 @9 {
                        //System.out.println(e);, l6 y- U" i! `0 g0 k8 O; e) E
                        System.exit(1);
8 Y+ T- e! J/ M( D6 K                }
: ~- P2 n  {5 E) M4 r  i1 z2 k
, }1 s8 W- x. u9 r; n
/ |, ]& T7 T/ S5 `        }
7 m# d% x7 \" U3 d
# x) I3 Y2 x/ o5 t9 E1 w        private void swarmSetp() {
2 Q/ U  S$ v: i1 i" b7 V) ~                list.addLast(new Agent(Id));( v& ^. h" R4 I8 d$ `- p
                Id++;
) S/ G9 M" T4 ~        }
5 T+ D9 S: w: z
+ l: r7 P* b8 x& R( d- M        public Activity activateIn(Swarm context) {; E  j- Q, [& _" w: s- E' ]
                super.activateIn(context);
/ j+ j/ Q+ k' R% i, q2 T4 V                schedule.activateIn(this);) ~+ K, [% F; R( H
                return getActivity();- L" d! y! F) d* B( H
        }
1 O5 q, d+ f' i: F6 `; \( j7 _8 q  ?% i5 s* r4 S
        public static void main(String[] args) {3 L( V% e& w% Z7 v5 f6 J2 S! f
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ h  F1 n+ m$ R( l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 _$ B' s! h6 e+ A2 {
                swarms.buildObjects();, h+ g+ }! T* \. u( F9 R. {, ]" {
                swarms.buildActions();. @9 D" g! \  T2 [0 h8 {9 m% \
                swarms.activateIn(null).run();; A3 Y5 x6 |' N. G3 {+ m
        }8 Y  a6 B& F# I1 `

$ ~% ]3 x: [- g8 O" }" R}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-2 13:48 , Processed in 0.028976 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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