设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7255|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' b7 {& n0 z) [( \  u3 j! G$ @5 H. h8 ^' J
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ ~5 C, x. \4 o: Z) e- O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
  X) a6 L& j0 Y. L9 mswarm.SignatureNotFoundException
  }. k2 P/ J# Z5 I0 n        at swarm.Selector.<init>(Selector.java:76)* C* Q4 \% ]0 ~! w  R
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) H: o5 _2 R6 G! M' i5 u: M        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 U6 }! D  ?8 b
* I& i/ I" L+ |+ [6 y& y# \, |
: X+ A. h* p" a- s7 N% ]import swarm.objectbase.SwarmImpl;4 }- \4 }& }2 a- c( j( W
import swarm.objectbase.Swarm;
9 e' n# @/ B  G( Wimport swarm.activity.ScheduleImpl;( r/ e* |) A9 V- l( ^) F
import swarm.activity.Activity;7 F  n# Y5 N: ~- H7 @; l
import swarm.activity.ActionGroupImpl;* [( r( F# I% k& Z# O
import swarm.collections.ListImpl;
9 {& D1 V$ K( P/ ^% f& }import swarm.defobj.Zone; ) `1 N0 @( j  A2 b. j
import swarm.Globals;
( r/ P4 m4 G; q5 J' ^$ E$ q- Eimport swarm.Selector;
' f% t5 J* h& u2 A1 \  }% X1 wimport swarm.activity.ActionGroup; " W7 ~) d$ K$ k2 C3 Y
class Agent {4 \* T' ?/ O) h. R/ B; |
        char id;
2 g* |4 D- B  b, W
! T# s8 u) ]' c8 Y- P9 Q        Agent(char id) {
7 ?4 e8 @- Y' z, M! g                this.id = id;
. J/ V: s: t) r6 N        }
' X. I6 Q+ K9 o8 x0 D
, j$ J: Q4 j" r' o8 @        public void agentStep() {- n% a* Q0 l; d9 g
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; j3 [! s' K- l8 _/ i/ T0 d        }- i5 i" ~9 g1 X7 X8 l
}
5 v4 l+ Z3 l3 J7 a) F  I2 s* _8 M+ W$ J, Y) m6 ~
public class ActionGroupDemo extends SwarmImpl {
) e; W0 x) u5 F8 Z! {' G        ScheduleImpl schedule;1 h; C& v0 C$ X4 T  s
        ActionGroupImpl actionGroup;/ F* B/ U1 q# A; D0 a& q
        ListImpl list;
" Y" o8 @4 D3 r+ v- p4 e, F        char Id = 'a';
' U7 C: q; e- g/ L7 q- T2 {% @7 i3 H' Q  ~4 m) {/ c+ z
        ActionGroupDemo(Zone aZone) {
: g5 P/ [* z; [& \6 f# l) O3 ^5 ^                super(aZone);, [) z4 U& m2 G/ C8 m4 x
                list = new ListImpl(aZone);& H! U; r5 x( ^* {
                swarmSetp();
$ j2 H! k  h- U" N3 l7 z                actionGroup = new ActionGroupImpl(aZone);
! A0 f( p4 u6 V6 |                schedule = new ScheduleImpl(aZone);
# V* F1 q, ~8 Y8 P. I) N) ?                try {
, ?) Y2 b& G* `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ {% n8 K( x$ s9 M. w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 ?5 G+ |2 {5 j5 n                        
7 c; d* G5 Y0 S* A                        actionGroup.createActionForEach$message(list, agentSel);) S8 m% \5 ^8 v- c6 x$ h2 C
                        actionGroup.createActionTo$message(this, swarmSel);
( u0 b$ L& Y' D* `  n; {# ?                        schedule.at$createAction(0, actionGroup);
( l5 a' x, G1 P. ]+ H2 f) W                        schedule.at$createAction(1, actionGroup);
4 E# C! W/ g6 ?# W. }! [' L  _                        schedule.at$createAction(2, actionGroup);
6 ]. m/ \! m; o# T( u: f% a8 L9 S& g) P: S, g' x! @
                } catch (Exception e) {9 p% M: r: q, O5 m1 F
                        e.printStackTrace(System.err);
7 p! f' y; b9 y5 L                        //System.out.println(e);4 w' R: S% k* I8 _5 a
                        System.exit(1);! A3 P$ E( H. A6 K7 f
                }
0 C- Z& G- b) g+ @' v; `. H2 h- {- n% q9 W7 g/ ?

- q# K1 E; @0 A2 y% e4 U' ?        }
3 ~2 S' \/ d4 B2 K
4 r' a) `5 z( n6 s3 m0 Q1 w) j! ^        private void swarmSetp() {4 W+ O% E/ D& Z" b
                list.addLast(new Agent(Id));
, c; W9 ]- s6 Q                Id++;
! u# r, y% U7 a% w8 r        }! m8 O! t. V: q- l. D5 U+ W0 J

- N4 N- n. B& _4 L9 O' `7 a        public Activity activateIn(Swarm context) {6 l, G8 {. K: Y% T9 i) V
                super.activateIn(context);) h) o7 I9 K& R% K5 ?
                schedule.activateIn(this);2 F& p3 ?5 d: t" j( T$ i
                return getActivity();
1 x- h# r3 u8 \$ g        }# ?& O% f, ?! z! j

1 Y0 s  M8 j/ K  g% w        public static void main(String[] args) {
! P3 I. n* ^8 d- |# H                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. p; F: q( d$ I. y* e
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( c" G: w3 z; w: g4 {. O                swarms.buildObjects();+ E5 e5 o6 O( f  `1 J
                swarms.buildActions();2 J2 h8 k; }" k4 v9 R
                swarms.activateIn(null).run();( D  B3 n$ b+ y; d4 ^) K2 i$ z
        }
  y5 T- ?/ T0 X. p8 \1 P% B) N
* C3 U; \! d/ ^" k+ g5 ~7 X}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-24 09:07 , Processed in 0.025038 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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