设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6747|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ h' }# ?5 ^! S5 A; A' O0 J: o/ E- d* T' K& X  ]% Y+ |9 m
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 I# [7 W2 a" I0 D! a# @( u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 G# V# ~) A6 }
swarm.SignatureNotFoundException% n6 i% b% }3 T. ?
        at swarm.Selector.<init>(Selector.java:76)* ?( K6 r; z  @) G" u
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 e/ R8 t+ i) w, z( r5 s0 }        at ActionGroupDemo.main(ActionGroupDemo.java:67), P9 s6 C: {  d8 p) G( M

6 y: R& R, l% C1 A6 v4 _8 T; k6 `) x, t; R% b9 G* k/ ~
import swarm.objectbase.SwarmImpl;
( ?; p% c" K8 V1 [7 Bimport swarm.objectbase.Swarm;
3 w7 o! R/ c  }8 I. M& b/ oimport swarm.activity.ScheduleImpl;
# h  f  S. G& U0 \7 ]import swarm.activity.Activity;
" P9 W) D+ ?" J4 O, a6 E8 R/ t. s4 vimport swarm.activity.ActionGroupImpl;
; W' k0 z5 r% Jimport swarm.collections.ListImpl;: g7 r7 R, M. i( @& H* B
import swarm.defobj.Zone; ( J' V* f+ |( n4 f' ^
import swarm.Globals;, f, H( c  R2 Z" r+ d% W8 [
import swarm.Selector;( |& B# g$ i9 x8 U
import swarm.activity.ActionGroup;
2 m  o8 ~1 F  ~% ?4 N/ v9 dclass Agent {- E3 l3 }2 J% Q6 K
        char id;( t9 `0 M$ x1 E/ Z
, G. z' }+ p0 L: \. p& N9 y
        Agent(char id) {
" u7 {! o( f7 B2 ]" V                this.id = id;
6 K! p9 D5 k& ~& v" w4 S        }
; m$ i9 e" ?  p
* ]+ Y% z' T4 V) g. n0 T$ X        public void agentStep() {$ G# J! d" P8 s1 g* ]8 [/ z
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 @+ R5 F/ O7 u1 X! @- ~        }9 g- z# z9 v1 C5 N4 X9 Y
}5 Z' n' v& Y6 a# b% ~; A+ x: x$ d

1 m0 N; f) y/ V; ypublic class ActionGroupDemo extends SwarmImpl {
) \+ H) M& V: E! A9 @7 u" t* L        ScheduleImpl schedule;2 z9 |& I7 O( G
        ActionGroupImpl actionGroup;
0 S* n3 J' x. _# W' c5 F        ListImpl list;
' x% `; `/ C0 q( Y0 x        char Id = 'a';9 [' t/ j% t: Q- q& I
# x! h' C0 N, N4 L5 o' s3 u3 w3 s& f" ]
        ActionGroupDemo(Zone aZone) {& k1 T# c8 f+ M0 G
                super(aZone);
: p5 s5 z2 r* v# L7 i/ ^                list = new ListImpl(aZone);
8 \/ B: u5 C% u4 H6 }0 a* U                swarmSetp();
, E; P# s( w& b' W/ g9 E8 i                actionGroup = new ActionGroupImpl(aZone);
1 b% W$ H+ |4 _) P: P4 a                schedule = new ScheduleImpl(aZone);* P& H2 d) z! K: a) B4 D" [& }
                try {
1 ^9 z8 n" Y) ^( O; H4 u+ s( `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 P9 P. n) X" O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& z; I, U1 F" j8 _3 U7 x
                        
. K$ W+ f) E( d8 A                        actionGroup.createActionForEach$message(list, agentSel);
/ ~, B, j" ]+ k: p( L# U# Q" O, e                        actionGroup.createActionTo$message(this, swarmSel);5 o- X* L4 B3 S/ Z1 E
                        schedule.at$createAction(0, actionGroup);0 U4 J. y+ e* y6 `) ^- ^, N" F  D2 Q  i
                        schedule.at$createAction(1, actionGroup);
) ~$ o1 u5 e3 ^% `4 Q' ~                        schedule.at$createAction(2, actionGroup);+ X. `  C& ?8 G" e5 ?& j

7 H, l5 b+ e* v4 C" F                } catch (Exception e) {) q3 \  N9 Q1 C, _5 F
                        e.printStackTrace(System.err);
0 b' v# C9 H) j" m/ W. m                        //System.out.println(e);* m; a  J( @) R; ~/ R3 [# T
                        System.exit(1);
6 s" b4 M  w1 M  V" q                }
# e. N! j1 A! s- L8 j; y0 o! r+ H0 R8 y- b. q9 H. l

+ G5 @7 u5 _9 W1 E2 G( d/ k        }
2 B8 y9 @: e7 Z% s# D2 Q$ @' h; }' i  H7 p
        private void swarmSetp() {
& b; ^8 i, ~, r! i4 {/ j0 Z                list.addLast(new Agent(Id));
8 M4 t8 s/ j% p$ {2 [' \7 F- X: |' f                Id++;
- N; v( W7 Z8 c) ^0 t/ E- p        }
% z3 ]8 X0 D$ G& T9 L; g4 z# d9 b4 b8 O2 d5 o0 E3 \0 O# P, Q' ~
        public Activity activateIn(Swarm context) {
+ Q: b  x- Z4 _                super.activateIn(context);
/ B. N. U* e9 T                schedule.activateIn(this);
3 K/ L- h% L* h0 F- T" ]: [# }1 c                return getActivity();, Q( g  r$ v- C
        }
+ `9 D- O! o  g9 H# n
7 D' y0 P  E8 }4 \) ?        public static void main(String[] args) {6 ], e6 H, Z+ A, z% s/ P8 Z9 }3 S) i
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& r! _$ Y9 y& h5 R) L& _
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! w! E6 ~% D- l9 K  N; r                swarms.buildObjects();
. q8 L& G0 k8 s8 T                swarms.buildActions();
# T. `* z" f2 D/ x                swarms.activateIn(null).run();4 I/ g: G% J; M8 [: h  w0 _
        }. R) q- j; A: ^8 T
) J! T' ]+ p- Z+ v/ J
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-8 00:52 , Processed in 0.016136 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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