设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5026|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
9 Y: V' @! L" g
' z3 h4 k0 {+ G# ~本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ n( h$ h  |0 S9 N1 U. |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 i! w% l; P3 Y4 Eswarm.SignatureNotFoundException
. X) ^( n. s9 R) `        at swarm.Selector.<init>(Selector.java:76)2 k$ {5 i# }# D# D
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)- k% |1 o$ ^* ]' t
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
& z& y/ h6 W( z: O+ F# {7 L
1 K/ L, i4 i: _+ v2 o9 w2 ?1 B2 u1 _; n
import swarm.objectbase.SwarmImpl;% |; Z+ Z2 u( e
import swarm.objectbase.Swarm;$ t7 @2 q: _4 w. X$ }: d: Z. ~8 Y6 M
import swarm.activity.ScheduleImpl;, G4 G8 J' s6 s! K* i, X5 z
import swarm.activity.Activity;
' W: O2 v9 W) [; z) mimport swarm.activity.ActionGroupImpl;
) K% r; m0 h3 pimport swarm.collections.ListImpl;/ T9 v8 w2 h4 C% P& U( Q( z+ @
import swarm.defobj.Zone;
5 {& Q$ y( ?6 E& C1 X  fimport swarm.Globals;
5 e" n+ k+ M0 E1 j$ Aimport swarm.Selector;
9 D) _' r7 v* |7 R5 B8 Nimport swarm.activity.ActionGroup; , C& v8 a, x1 x2 J2 r
class Agent {. f# [/ N, w! r
        char id;
, D" i6 }( p4 N
" Q6 A" }9 a* A& ~* w        Agent(char id) {
) O/ H( d3 k6 I; z1 w( s+ |+ Y                this.id = id;+ r, o" B- P" {5 A8 w) I' X5 K) N
        }
5 G( p; p, B% G( ]/ n0 u) \5 a# V; q' y) l2 W! h
        public void agentStep() {* A" F: J4 U1 @6 k, v0 u
                System.out.println(id + ":" + Globals.env.getCurrentTime());
. H2 T" c: Q8 z7 }9 L        }
7 g" ^. H/ b5 ~3 N}5 h- G( X6 Y$ f5 g3 ~& o2 v
+ G5 F0 R" G: T4 O/ ]- h
public class ActionGroupDemo extends SwarmImpl {# S1 N. o+ H$ m* E  r0 m
        ScheduleImpl schedule;
& Z) ~  z' s- C. V& i3 ~        ActionGroupImpl actionGroup;: b( c& B2 t; {7 m+ K  r* r) i# j! e( f* a
        ListImpl list;
, L9 ^* K6 P/ @1 M5 C        char Id = 'a';
, I) H/ y1 k1 E. h6 ?/ b4 n0 _1 B. t. r% s1 C
        ActionGroupDemo(Zone aZone) {
' f5 J  q( Q* V- H- z                super(aZone);2 Z6 `$ ]) e8 M7 J; a$ I7 e! x
                list = new ListImpl(aZone);
& z" M% O9 @: g- r/ s; T! z                swarmSetp();2 @# {$ m7 B% v3 u: b
                actionGroup = new ActionGroupImpl(aZone);+ N) h+ Z# V( {" J- t+ c) @
                schedule = new ScheduleImpl(aZone);$ Y  E6 t; c" _' h9 Y
                try {
& T0 s  K" h% r$ r' e                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) I+ }3 {- \. u
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  e7 S5 A# B& |" W. Z6 W                        
4 @1 X3 @2 `: p( j4 Y) E3 J" ~                        actionGroup.createActionForEach$message(list, agentSel);
" _& Z- r$ Y# K  K9 s                        actionGroup.createActionTo$message(this, swarmSel);
! q: `- ]+ Z- E0 x6 t4 j, A# K' H& {- J5 z                        schedule.at$createAction(0, actionGroup);
1 Y' D7 z, D2 E: W                        schedule.at$createAction(1, actionGroup);0 `. c3 I( X( X* |( t$ ^
                        schedule.at$createAction(2, actionGroup);* t- L8 J7 g% ^* |9 J& u1 p& C
! X! b1 f5 i8 g' T& n
                } catch (Exception e) {( X- v7 k& f+ [
                        e.printStackTrace(System.err);1 v7 w: L# t$ l3 C0 }: J/ d3 D
                        //System.out.println(e);
3 [4 J" c* ]. E, c' b                        System.exit(1);
% I/ y! l( C1 a: g( d5 n( k                }
6 `0 c' c( `" o! ]! `+ H
  ~& ?. h+ u2 c" P/ E; q4 A
3 ]2 f) `$ z4 A- V# f        }
* j  @' Y- V6 j- I( Z0 U0 q0 S  F0 x- v9 D4 P5 S1 T; k# v+ K: g
        private void swarmSetp() {! A* ]% |2 [3 s, }& X7 V
                list.addLast(new Agent(Id));
1 I' n1 f' I3 V) F$ i- `                Id++;* P1 p7 J$ K# s5 i4 l
        }
1 ]8 K0 f* v" j  |/ V2 ^2 w5 J# T. c3 I% y
        public Activity activateIn(Swarm context) {
# p4 ?' u1 {) G0 H4 L0 i                super.activateIn(context);
" k9 o" X* i) L0 b: `* R# y                schedule.activateIn(this);: n( g9 U8 Q0 d: M; Z
                return getActivity();
% t& a6 U' ]5 p/ v+ ~        }4 y2 c* l8 r  M& T' i7 l4 R

3 }9 x/ b) c$ ]) x        public static void main(String[] args) {" l" t* i7 N+ p$ A
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* Q$ \& w- i% ?. h9 k1 q                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' R" P) O4 D# N                swarms.buildObjects();
! W9 y3 r, ^1 ]$ }$ x1 D                swarms.buildActions();
) |' O, V* \: }' |3 ^1 n                swarms.activateIn(null).run();( i9 f) ?( Q: }  q7 ^
        }
3 T% X; Q- Z+ [) k
5 M% }8 {- c' t}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-22 08:33 , Processed in 0.016480 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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