设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12361|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; x' j+ P8 A- S1 Z' }2 E( p8 l$ ^; M- Q# C- {3 [$ @/ h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  m6 [" g) ?/ \: j6 h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." _' |7 p' e, i
swarm.SignatureNotFoundException8 A/ T: e. X$ N  a3 F3 z
        at swarm.Selector.<init>(Selector.java:76)
4 j5 f  K6 b% @0 ]2 F% \        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), ~5 T8 g+ x  V' V: B
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 a9 @: G" [2 ~5 W* i1 p
; @9 o, l$ d0 f5 B# Y
$ r2 e4 Q% I4 D  t$ u$ v
import swarm.objectbase.SwarmImpl;0 \7 W! ?- P$ A/ p; P$ n6 `  k
import swarm.objectbase.Swarm;) N1 y* B7 G/ G1 X7 f
import swarm.activity.ScheduleImpl;5 O! b: B2 Y1 Q# |3 W/ |+ I/ d
import swarm.activity.Activity;
. p  Z' L/ {- H5 Iimport swarm.activity.ActionGroupImpl;
& ~# z1 a( g% w' ?& ]& _4 Timport swarm.collections.ListImpl;
" e) i- b; n% J' W9 j6 A1 J7 I. @import swarm.defobj.Zone; ' M/ _4 \+ V% ^3 `& e% L* G
import swarm.Globals;5 W4 K; z( x, m" B) m, `$ d
import swarm.Selector;8 j( H8 ]% L5 e' `- o
import swarm.activity.ActionGroup; & F" }' `: N% ~) ]( C; q5 W# D
class Agent {$ `3 O- P+ c: f% C! X$ P3 N
        char id;
- i$ c1 K  n* w  j! [+ W4 c# U+ r2 E+ {& M
        Agent(char id) {
& g& w, K0 R& c" z& k                this.id = id;
5 N7 ?3 e% g' U        }
  ?5 f6 G+ p9 q* k6 ~0 N% v" J! y
* U! j/ z1 Z7 a4 Q2 C3 |/ R. W. T        public void agentStep() {& O* W1 a! W/ O' ?/ Q" a; g3 a
                System.out.println(id + ":" + Globals.env.getCurrentTime());) F( P1 X+ K- v. m
        }* t. f' Z& ]) m; x1 F
}, v' v5 W" D* o
5 ~9 e, v+ ]" Q* R6 g+ F
public class ActionGroupDemo extends SwarmImpl {
9 D7 B. m* s$ w! E7 l        ScheduleImpl schedule;. G  _. V# M% C
        ActionGroupImpl actionGroup;5 b( g; ?9 O! K" T0 }
        ListImpl list;$ @) u0 X% k0 ?$ \5 D3 S& s6 m  K
        char Id = 'a';1 H( b2 X+ C# ^2 j9 d
( F6 b& n/ U  s+ R: i9 M
        ActionGroupDemo(Zone aZone) {
2 O( b$ O4 Y' F$ ~( J3 s6 H                super(aZone);
1 z. j0 y7 w- r7 N1 h5 Y                list = new ListImpl(aZone);; I* G. e0 p  @  e- I
                swarmSetp();
% ~! z( e8 j; c8 J                actionGroup = new ActionGroupImpl(aZone);9 u' I# Z* {, M* G+ d' a/ b
                schedule = new ScheduleImpl(aZone);4 H9 e, D, h: g' B" u" H- n' h
                try {
4 D' `) r' C9 y( L8 H3 ]7 V5 F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; _9 h. |  W' k0 M6 J  j! G! k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% w$ P2 ^  M% B; u& r                        - q: C0 w$ H" d2 A1 h
                        actionGroup.createActionForEach$message(list, agentSel);
5 ]1 F. g% E! e                        actionGroup.createActionTo$message(this, swarmSel);
) y% I8 j. t4 p9 J                        schedule.at$createAction(0, actionGroup);
# o( z0 D$ j  [1 z" k9 _" L7 n                        schedule.at$createAction(1, actionGroup);% }* R$ ~4 {0 u) D
                        schedule.at$createAction(2, actionGroup);
- s+ l, K% y. f! T4 H! X+ {* g
7 w- Z9 z* N5 ^                } catch (Exception e) {. o) ^" C5 v% T2 Y
                        e.printStackTrace(System.err);4 D6 g6 o, C: k. Y4 |; N# e5 i* q# Y
                        //System.out.println(e);
# W1 b( o2 q( e  o! ]                        System.exit(1);
9 a! s# E" y5 Q* \% c1 g                }3 K0 a2 k+ G$ X
# I: z2 i: h: C7 J4 N: ~* S& ?

/ h5 `) b0 h7 T: m! k# ], z        }1 ]3 T) p2 |! d* y& Q* }' |
5 @/ L) M7 k. E) V/ |/ Q
        private void swarmSetp() {1 W3 x* g4 u( x3 u
                list.addLast(new Agent(Id));4 |! N7 Q4 p) H( @" k. o
                Id++;
) V# p% U4 i3 c- I        }
8 q8 v; A4 f# h5 ]2 K  c' Y9 N1 C0 |8 z/ I5 G  {8 C
        public Activity activateIn(Swarm context) {
/ [1 F8 o6 S/ d9 c5 f: \+ I                super.activateIn(context);
$ E0 f8 W5 q$ D                schedule.activateIn(this);
  f6 Q6 W- @: ?  J# E4 Z                return getActivity();# x8 M7 H  x; S+ L0 o, a: B$ X
        }: ?4 a' K6 X. a+ D# J: B5 l; @+ G

9 _, |* _+ N" Y2 K) e: D( F) q        public static void main(String[] args) {- L# x+ {4 R$ [- H* H7 H
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, i9 b/ @3 B! b) P+ z                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
$ K0 {) l: a: u) c                swarms.buildObjects();
! A* h6 l1 J2 ^- o                swarms.buildActions();
5 V$ Q! ^" s" B/ \                swarms.activateIn(null).run();  e* n% W+ J: z; x  z
        }
4 x9 j0 }0 v1 @( O( E8 ]
1 z7 G  c. R' J% n6 @# i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 14:16 , Processed in 0.015949 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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