设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5714|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 l9 ^1 L7 P6 r5 \2 ]" a* C5 Q

) c/ u' O- u  \% F; P% U  ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update210 e% k  Z9 f& \/ m' a1 A( b) y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
1 L, B( J* v5 S; D) o7 x- ]& y& Hswarm.SignatureNotFoundException
5 U9 E! i$ y+ N3 {, E7 \        at swarm.Selector.<init>(Selector.java:76)
5 Z2 o; F/ u# O3 Y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 _/ L; l- p' J" N3 P        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 f6 [9 T0 o4 `% F
( P, ~$ p' V# H5 k) n( }) z# ?) s6 p3 [% C9 q: Z% Z
import swarm.objectbase.SwarmImpl;
( `2 Q; g8 T, W/ {+ _  t- Gimport swarm.objectbase.Swarm;* n9 a4 L, a: H& H' T) s5 Y
import swarm.activity.ScheduleImpl;. N9 E1 U5 s3 X' d
import swarm.activity.Activity;
- Q3 u  D- E% `# ^1 ^& A6 dimport swarm.activity.ActionGroupImpl;4 S$ B, [' i! n+ X+ j8 _. m
import swarm.collections.ListImpl;
3 L! L% [- W2 s% o& ^/ s2 e- F2 qimport swarm.defobj.Zone;
3 X" r) @+ Z4 G0 c# ~. Oimport swarm.Globals;
$ y" J* H1 z5 M  N5 `import swarm.Selector;6 `# O% ~# H! w" u+ z4 w6 A
import swarm.activity.ActionGroup; & Y  d  r, ?2 v9 s9 o
class Agent {
* X  ~# b1 t' G; t4 L; y0 W: L" z        char id;6 J: A% p" j, ?$ [; {( o$ G. r; P
$ F) h/ a$ x' I! E" c: |% a
        Agent(char id) {
6 p# J# U- h: H* v( d3 b; L! E                this.id = id;
. z* L* ?/ I+ V        }
& w& g: y( Q( Y: d
  o- T9 f% U  Z8 C- @) J        public void agentStep() {7 M$ x; t1 f# f! o
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) t1 r2 I4 y8 u, B) c$ P' u        }8 ^$ O# @4 j3 U. e8 ]0 x4 Z' y+ L2 d
}
% m* @0 C4 j" @5 L& @) p) N1 n% q; |
public class ActionGroupDemo extends SwarmImpl {; D8 t9 N- i5 g
        ScheduleImpl schedule;! f; O- u  X# M/ X4 P/ A
        ActionGroupImpl actionGroup;' q8 ~, g8 J) m  t! c
        ListImpl list;
8 E! V/ ]( P4 A1 o# l* y        char Id = 'a';* g% f; m9 d& b) I/ ^$ R6 x, h
# U1 V/ k1 q/ F% P6 N0 q
        ActionGroupDemo(Zone aZone) {
; }% k6 c6 U+ E8 Z+ j+ E9 t! ?0 \                super(aZone);: t9 @1 R' u  m2 z6 e) V8 F
                list = new ListImpl(aZone);8 j* |/ U" Z# I3 Q1 z1 Q5 S) B
                swarmSetp();
! Z6 q! E5 x9 Z1 r0 `                actionGroup = new ActionGroupImpl(aZone);0 g% E* e6 x. V: @2 _, W$ ~8 I
                schedule = new ScheduleImpl(aZone);
- }5 C; |3 N' Q) \# A4 C( E                try {2 W) |# V' B+ t' L! W9 Y  a  J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 j6 W4 l. @3 d
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, n" N  b: m5 ~1 |5 h( ?
                        9 r1 v1 b8 y- M" A) S
                        actionGroup.createActionForEach$message(list, agentSel);
# ^3 n% Z0 M# s, I                        actionGroup.createActionTo$message(this, swarmSel);; g: W+ i2 T- F  r7 w  U; D6 R
                        schedule.at$createAction(0, actionGroup);
' S3 i8 U' b/ J$ ^5 O( p2 H                        schedule.at$createAction(1, actionGroup);
, `4 c( |  ^+ b4 G2 l/ P/ {                        schedule.at$createAction(2, actionGroup);
  E' h: X+ ~6 O+ q& K; A7 Z4 R
4 l+ @5 q! G8 T, r$ y1 V% h; N                } catch (Exception e) {) h9 s  U0 s) G
                        e.printStackTrace(System.err);
& W. o( @: r/ Z/ B8 h                        //System.out.println(e);9 O0 p% |3 n' v" q- d
                        System.exit(1);9 y6 O1 L- Q' J* e8 B8 {- B* L; f
                }
* |/ p, e% ?3 B+ R
2 v/ q( {  @- e
: M6 v$ O: E0 |* w' Q* g6 I9 I        }- v- i( p, J' m# t" v

% N3 c' o/ }% Z. u' [8 J        private void swarmSetp() {2 f/ x4 L4 L, F/ w
                list.addLast(new Agent(Id));% v& h* k2 v- [1 K: G
                Id++;
! K8 ?- y& R/ {( A" x0 r" H        }
8 o2 [& n! Q" o+ a( `, D+ @+ j
1 [. r" g% x$ d# |        public Activity activateIn(Swarm context) {
9 d( s2 y7 o) A7 U3 T1 e                super.activateIn(context);& p# _% T! \+ ?! a
                schedule.activateIn(this);6 X! R; y& i/ q. g2 M( w/ b
                return getActivity();7 q0 G9 `0 `2 `3 b# `
        }
/ y/ k" o+ ~4 k0 ]
( O9 d  J3 f/ D/ C        public static void main(String[] args) {  s( \2 j5 ~& [- i3 c& k- N2 S' U
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 |* q6 f; V4 d! v4 _
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 _$ |; h" L! Z9 [
                swarms.buildObjects();
6 ]: H7 A6 V9 R$ Y; s- n3 F                swarms.buildActions();
: D1 ?( f, j+ X8 d3 K3 R+ l/ ^                swarms.activateIn(null).run();) g$ F4 [6 V# i2 i
        }* A- ?* n1 ^1 Y) [6 o

' d4 s) e0 P# ]5 S  W4 l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-20 20:23 , Processed in 0.014481 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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