设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8656|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / Y( N8 x. S8 i! n) ?% `

. a* j8 G. Y. ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; n: [5 {$ K$ w8 H& M2 e& O
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
9 x$ l/ {8 h) ?9 P! q; P1 E+ }swarm.SignatureNotFoundException# a( V! u# B% a' {6 a6 M  \
        at swarm.Selector.<init>(Selector.java:76)
4 @$ G$ v% ]8 Z. R5 p, B0 ^5 i. E, Z2 v        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 S. v( Z0 W9 k% ]& T        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 N0 N5 k! {3 |* x( ^. h* |% e
" e/ q* Z- s& t) ]" S. m  O) p  H! h: w# S  J
import swarm.objectbase.SwarmImpl;
  z, |# @% S6 limport swarm.objectbase.Swarm;
* W+ p# _9 R- ^  O. S( J! iimport swarm.activity.ScheduleImpl;+ g  D: N' H3 P0 h
import swarm.activity.Activity;
/ i  B2 g& q  _4 ~/ Uimport swarm.activity.ActionGroupImpl;: e. Q5 u! Y- d3 X; s9 A
import swarm.collections.ListImpl;
; u" |, U! ^4 R) X: v5 N4 E8 H" @import swarm.defobj.Zone; 7 y* k& u8 N* q* f  p9 y
import swarm.Globals;
; y! B6 N! {) G2 Q- b$ K! O/ Fimport swarm.Selector;
* H2 e- @, u' n7 @import swarm.activity.ActionGroup; 5 K# ~0 O: n0 L/ I
class Agent {. Y- U1 ~8 r, h
        char id;% f$ [+ i6 y7 b1 {; E

+ [5 P) b& x9 u        Agent(char id) {
; |0 d, _% k5 o6 u                this.id = id;
8 l, l# L" ?* B7 l        }/ l+ f" d6 x0 c
( m, y- S/ m0 y& \. `$ G9 X
        public void agentStep() {+ @* a, w- v2 D5 m% S: P2 _
                System.out.println(id + ":" + Globals.env.getCurrentTime());1 }; s+ t. |3 Z3 i, Q# S5 ]
        }
4 |: @1 E; N/ M3 c}
! E( K- \% z* c4 p) x/ S* |: a, z( w' n& r8 ~' o
public class ActionGroupDemo extends SwarmImpl {
8 \' X; X7 X) y* G        ScheduleImpl schedule;
; q6 t8 R  u# f        ActionGroupImpl actionGroup;% C9 ?' l# W6 X4 q  v! o
        ListImpl list;
( G) v7 D' ?0 q4 k; G        char Id = 'a';
$ M; |$ v2 T  y- u" ], Z. h
, _( J6 A% T* k        ActionGroupDemo(Zone aZone) {7 w* ]0 j# l: e9 [' p* X6 \5 L7 ~2 x
                super(aZone);0 }7 i. n) R1 x6 d5 \" H
                list = new ListImpl(aZone);
5 Q' Q$ k2 h& J4 v0 a                swarmSetp();2 @& _3 V+ {! P* M8 m
                actionGroup = new ActionGroupImpl(aZone);7 r9 a) v1 [9 L% I
                schedule = new ScheduleImpl(aZone);1 E, Y" `8 H, s
                try {
. W2 Q) C; o7 W; A; u3 @- G                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 r3 Y0 C/ e0 S2 A2 k3 ^                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 g5 O3 V0 d- E( E; C/ F
                        
6 ?! g1 c2 D% u- K* W                        actionGroup.createActionForEach$message(list, agentSel);
$ D  ?, s+ ?0 d: t                        actionGroup.createActionTo$message(this, swarmSel);7 w; y2 M$ T. Z! u0 s1 q
                        schedule.at$createAction(0, actionGroup);
4 c* M/ N+ ?2 {# c- H) T                        schedule.at$createAction(1, actionGroup);
# l( p# }( L* o% L. R                        schedule.at$createAction(2, actionGroup);6 x5 a  k' f! ^2 E! g. v: x
* s$ b' ]4 r5 o& T& z6 l) @$ a: K
                } catch (Exception e) {
7 q  ^* m, U; H! D8 H3 H6 f0 g                        e.printStackTrace(System.err);
4 C- y0 W: A+ C, z                        //System.out.println(e);+ X: C) G' x, E' m; ]: a4 u
                        System.exit(1);. J6 a8 S9 H$ Y
                }* e3 V$ }& f: ?! H
- V5 a  a# q+ i  F! N2 O! K& x' a

9 ^' n! C" Q. J; y        }8 I4 q4 p% J- n: }+ l2 S; N/ q
! d7 f$ c/ ?7 [$ q3 R" I
        private void swarmSetp() {
; R* |- Z/ Z' i: J7 c                list.addLast(new Agent(Id));
; L" Y7 \/ A5 N                Id++;/ B! p% r8 K8 W' F6 H- x
        }
0 {) J3 t6 M' W  C8 V0 D/ p: }7 r' ?
        public Activity activateIn(Swarm context) {
: e  }: U9 y/ T                super.activateIn(context);
/ ^$ c% p% C/ C% I) t! u5 e/ c                schedule.activateIn(this);
  y! j4 I5 d  h                return getActivity();4 B" E% y: S' v* b6 d  }2 Z
        }
7 b0 {2 b9 Y6 i
! r  I# U+ _' I% A/ |! K- q" y        public static void main(String[] args) {
# }+ q1 o0 T5 Y. D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 ?9 U0 G/ |9 c* J- ~! }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);# w! b# E; W% t7 e
                swarms.buildObjects();, M7 p7 j2 m- A. @# y
                swarms.buildActions();7 K0 m! z" I  h8 W! h1 m
                swarms.activateIn(null).run();
  W7 r( y' h# n6 G4 \( Z4 E( X9 x        }
! v, V* X/ f/ h" W' w  v; e2 A5 ^& p5 x
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-18 20:46 , Processed in 0.036716 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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