设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6840|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" o9 C* |+ e8 x! t
, N% u3 S8 b) L; B) D6 i6 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 d0 ~! w/ I. t* U8 z5 `' `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 t8 B# L& S$ s8 l1 k
swarm.SignatureNotFoundException
. `2 o* g$ [# m4 s2 b$ V        at swarm.Selector.<init>(Selector.java:76)8 P. c, I/ Y' e! S6 `6 o9 w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 G* E; T* b9 n; J2 S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  Y7 e! \: r$ \* O8 @& W! ]1 v2 c7 |! t; [8 q/ Z

, H$ o% Z' _1 v" Limport swarm.objectbase.SwarmImpl;
% w: Y* L. H4 V( timport swarm.objectbase.Swarm;3 z& D4 _- y) y6 x
import swarm.activity.ScheduleImpl;3 N  I8 g3 j4 q. p4 s
import swarm.activity.Activity;
( _3 ]# V! Z2 |' q. x* kimport swarm.activity.ActionGroupImpl;+ Q, Z6 q% b; r/ F) ?$ i; L
import swarm.collections.ListImpl;+ T8 p" p9 l# S; R
import swarm.defobj.Zone;
; C8 i+ @( \5 L* J6 c: x3 Pimport swarm.Globals;
) P( r* x% s3 y7 ?6 Qimport swarm.Selector;0 }6 m5 M9 ?3 i( i- W" Z
import swarm.activity.ActionGroup; 3 @. H/ ]9 P3 r. P
class Agent {
. {/ b: j1 R$ M' y4 d8 n        char id;0 j" A7 \' ~5 Z8 C! L7 I% w7 b+ @

2 I3 R5 w6 Q$ W- l0 v- T8 ^        Agent(char id) {
4 E% `3 \( j/ @% h) U: X                this.id = id;: H% r. f. v4 f. v2 e# U
        }( C) d% C" A1 T  a
/ y# }$ Q8 _. `! D  d4 O* G4 c' ~
        public void agentStep() {
! Z8 o7 s' _  b% I# Z1 \+ |                System.out.println(id + ":" + Globals.env.getCurrentTime());
$ E( C3 ?* C* W( _2 g6 S' v$ H        }
4 z3 c! G% ?% u}5 d+ E0 K# `2 e) `/ C9 T( y

, q' o9 m2 E( k: h3 f, _" hpublic class ActionGroupDemo extends SwarmImpl {, I6 z) L8 Y4 M" q+ Z6 n6 T
        ScheduleImpl schedule;
$ @" w) a5 k& t  j& P; R: [1 c        ActionGroupImpl actionGroup;
5 E* ]) t& s% @1 O. H( P; _        ListImpl list;
  j+ ^- O4 x. m) o- N        char Id = 'a';5 y9 k: g1 E, s
7 e; u% `7 c& s2 p% l
        ActionGroupDemo(Zone aZone) {3 H" ]8 x: ~2 m; i: Y7 F# s8 |
                super(aZone);
; u, k! E! o7 n3 V- R                list = new ListImpl(aZone);
& J# ^* j/ T, o# M) N) b                swarmSetp();! _- o! n: z; [( v
                actionGroup = new ActionGroupImpl(aZone);
! x: Z& o* `6 H. m; z; m% U                schedule = new ScheduleImpl(aZone);
( }5 |5 V' I1 I( _+ r                try {. T; K$ x* {+ N( n% z, ?4 _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 j( R& Y1 W1 v0 z, z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 m: J  S" [4 k4 g% Q" B
                        
# y9 n0 c* L6 r6 l                        actionGroup.createActionForEach$message(list, agentSel);
  l- E: H. X0 ^2 T* G9 \5 ?                        actionGroup.createActionTo$message(this, swarmSel);
+ B' G4 m! |4 R- ^5 S                        schedule.at$createAction(0, actionGroup);. ~0 [1 c. B* z3 l) K( L
                        schedule.at$createAction(1, actionGroup);5 M) ~: u) y5 o# l+ A* _1 v
                        schedule.at$createAction(2, actionGroup);3 E8 D" {. w. P+ P7 f/ O
( w/ k1 i/ O" Z# }; j6 @  v5 Z
                } catch (Exception e) {" @9 b6 W) c6 }0 E# P
                        e.printStackTrace(System.err);
2 g. d3 x+ L+ Q; a% m! E$ P                        //System.out.println(e);& a' {4 ]2 \" I0 q% g% t  d
                        System.exit(1);
3 N9 H1 x3 ~* i; N, j3 K                }
: ]" Q# O4 c7 A$ j+ A" e2 h8 r# x
  e( T5 [+ ?4 z- d3 ]/ T& [# I3 o- a+ g4 i  u
        }4 G  ]& l' R0 i: @
7 ]4 M; b8 r$ o
        private void swarmSetp() {
8 \2 j. P  J* h+ F2 A                list.addLast(new Agent(Id));
+ L4 [3 `* l* A2 ]/ o8 S5 \                Id++;2 n5 T1 Y8 J7 A6 {
        }; ?  l2 a4 J' I/ ^+ X9 U

6 P7 L4 B# @- d        public Activity activateIn(Swarm context) {1 u8 P6 u* X5 f4 u
                super.activateIn(context);' w2 r9 S4 F0 M6 S7 U4 Q% }
                schedule.activateIn(this);. c+ i. h3 Y$ i
                return getActivity();
/ R8 T6 O2 b; J4 D' h* M# y% X        }# k5 h* B. a: V2 O- `& d" L2 D' {5 Z
8 W, L6 P3 t; l& J/ Q  [5 \; c
        public static void main(String[] args) {
% y" P# k* o# t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ u* I4 }5 a" e" c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ j* M* Y& p" I7 l0 g( r
                swarms.buildObjects();
% z( X2 k  L: j6 _" z2 x2 A1 w" Y                swarms.buildActions();) C0 \; {+ i5 h4 r* l
                swarms.activateIn(null).run();
. I! U6 X. j  ^# F3 |: e        }8 E9 `/ E, o/ E2 H* }3 x" L

9 I6 N# u2 e) u) N: b}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-10 17:49 , Processed in 0.018299 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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