设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13781|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 `6 P; e" k) U9 Z/ X5 a  `
( S2 d$ b, B) N8 _' O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 X& {' N: z* o+ }% b; G% i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ I# p! V0 y; `& N
swarm.SignatureNotFoundException! |- s7 B) ]. j9 B5 ^% C( y( b
        at swarm.Selector.<init>(Selector.java:76)
, o: g! ?) W  q" z% E2 j        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; ^6 K; U$ T% [9 I6 X# H$ W( W        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 h# d) q9 ?6 @+ s" l3 x
: L# ~2 N1 g* Y
* y2 }- r5 o! E7 _! ]( [  J
import swarm.objectbase.SwarmImpl;
: {! R& ^( p0 _1 h% i( X. zimport swarm.objectbase.Swarm;
7 C, L1 ~6 p7 `4 |7 o1 p  jimport swarm.activity.ScheduleImpl;  `# @- A2 I7 v, }( a& e
import swarm.activity.Activity;
# ?! {. O- ^4 G, uimport swarm.activity.ActionGroupImpl;
8 a: m/ b% B$ A* c, Aimport swarm.collections.ListImpl;; h* p0 Y/ u( d( K% B& p
import swarm.defobj.Zone; $ U1 M* Z6 Y) g- \8 ^- M
import swarm.Globals;5 g, s3 @" ]6 y- G
import swarm.Selector;8 w0 V! D( ]/ B$ B
import swarm.activity.ActionGroup;
/ f  H; m+ ^5 t3 `, L2 _class Agent {8 P" M# E9 Q/ Z8 s7 `2 B8 U
        char id;
4 b1 E+ A$ ?8 o6 ^6 a, x# N
! V+ f- y- r5 r& V2 }        Agent(char id) {! s  W7 W% O) f: m
                this.id = id;/ Y% W1 p$ a$ a! C$ A) e' Y
        }
- n, ~* A6 i: I; K' s" m. Z4 Y3 |+ G- m6 C
        public void agentStep() {) n1 Z+ x7 X. p1 E1 v
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 j9 [+ U+ Z6 o
        }  @7 x7 t1 x1 M4 C( [; d1 j
}! e+ y  K9 g, ?- P) `) P
7 y6 x" @( R# T; F1 j2 f
public class ActionGroupDemo extends SwarmImpl {' M/ e- e/ ^* W2 q# Z+ P! E
        ScheduleImpl schedule;
0 L' h8 z# x" ^        ActionGroupImpl actionGroup;
) h' r; g2 |* f: k, \        ListImpl list;
! @- t4 J! Z* Z+ E, x        char Id = 'a';0 F8 @. |) l1 V$ q' E7 ~5 [
7 S% V" M! A4 o3 v! k  b% p
        ActionGroupDemo(Zone aZone) {5 C$ v1 X0 T" [
                super(aZone);% m2 |9 S+ u4 F+ C  s
                list = new ListImpl(aZone);* U0 w; m( p' ?8 x( L9 W: D: v3 n
                swarmSetp();" @7 ~: Q( `/ ?: r# _4 Y: p/ T" S
                actionGroup = new ActionGroupImpl(aZone);# R: A) D/ F8 P& b$ X- n+ A% c9 g
                schedule = new ScheduleImpl(aZone);/ I1 R: g) M' r( v
                try {
3 \! C' R* i3 R; L7 r0 ~' |                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
- ~+ t" F4 w3 ]6 O! f. O. e  ]                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
* t  f1 i( {6 ]# O) J. y# }                        6 M5 Z4 L1 e+ K& y" G% |
                        actionGroup.createActionForEach$message(list, agentSel);5 ^9 V/ p) g( V
                        actionGroup.createActionTo$message(this, swarmSel);! K5 u/ d1 N; F( \% T6 d3 x" a, l) ^' Z
                        schedule.at$createAction(0, actionGroup);
' M2 B) K' W- x; s6 |3 c                        schedule.at$createAction(1, actionGroup);4 f$ [. S6 {4 K% n9 ?; D' d5 F
                        schedule.at$createAction(2, actionGroup);) D4 a6 R' C7 J2 ]! W; z' F7 x
. v( P+ C! A' C& R
                } catch (Exception e) {
: T( ~5 P- |4 l. m5 }+ |8 O/ @) W                        e.printStackTrace(System.err);
* x! Z* q* H6 n! `, g' s                        //System.out.println(e);
" Z9 E5 U7 ?* M* C; p                        System.exit(1);+ D, E6 O, F* ?. j0 S1 F
                }
* A% |- O5 S; F8 |, h' b& D1 `$ L5 ?$ l  m: m
- o: C: V) r0 `0 n, o+ U" Y
        }
8 [$ H9 g* h7 D" d
5 w+ q! ^7 O" p6 D* A( ^        private void swarmSetp() {+ u/ D( U- b! q6 U$ Y$ @5 ^3 Q
                list.addLast(new Agent(Id));
' j) Q7 l' K9 w' M7 F: c" ?                Id++;) }9 L- O2 K+ J6 E5 Z
        }5 q* M; R# t2 V' I3 d0 n" T3 `) U% K

7 x9 d; m2 X/ s) ]        public Activity activateIn(Swarm context) {
9 |, y. d# @9 U7 G6 W# O; W# u. j6 Q                super.activateIn(context);0 l# b8 Q0 J$ h4 o# e/ x- f
                schedule.activateIn(this);6 D  X/ u5 o, M- z+ Z3 A& x% `
                return getActivity();6 M# m3 Z- i% c
        }) [# O1 h) F+ {: O% e8 f* T
9 o2 t0 x, {- E! L/ T: R6 |
        public static void main(String[] args) {
- N* t1 }% g& c" n+ a" i                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 d* Q- n, X% y; \0 Z8 t; |3 S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- }* U( S* p! F* z
                swarms.buildObjects();
; ?5 z0 C/ C0 s' j, t# d8 e- C                swarms.buildActions();. q0 @4 F. b) }" G
                swarms.activateIn(null).run();' ^- ^7 s: S; X( T* ^' P  a, Q9 B
        }
, P& j  |  R- u0 x8 u& d' U% c1 C
0 \+ u" k' ], V7 }4 @: M; t; K# N}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-17 10:12 , Processed in 0.016714 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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