设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4868|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. d" r0 C! _3 C& p% w! S0 e) I6 z* ~4 |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& s( W' G, f) `8 e. e2 l4 V5 d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 w8 h% G: i8 \/ t  K  ]" Q* L
swarm.SignatureNotFoundException9 \& |& V$ Y9 F: Y% r
        at swarm.Selector.<init>(Selector.java:76)% [, A( \: B- ~; A7 ]8 F
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" x2 j1 h* `/ f4 X$ T* b) q) K        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 ~7 }3 \* W5 r& O' O" {0 p' ~
( z+ G2 P" P( T! K  ]1 v' t* m  L7 {. t
: g$ s+ Z! E. A, I. simport swarm.objectbase.SwarmImpl;8 J! n  r$ O$ c
import swarm.objectbase.Swarm;- J2 {4 T/ P  A! L; q
import swarm.activity.ScheduleImpl;2 n% s$ e, d' ?2 s+ F
import swarm.activity.Activity;
) B3 A9 l6 v5 \( u, f  b5 yimport swarm.activity.ActionGroupImpl;
$ e' v% N# G' Z; I  Y5 Kimport swarm.collections.ListImpl;( a! R, U& m5 I$ r
import swarm.defobj.Zone; ! L. X6 U1 k) e. D( I  j
import swarm.Globals;
3 ?% J; ^) E  S% yimport swarm.Selector;
1 H4 G$ r  X; Vimport swarm.activity.ActionGroup;
8 d) n# J- B/ @8 g8 Aclass Agent {
/ b# @- E' n; I  M! o        char id;  U" H; W  @/ X8 X+ `
$ i8 r0 h' m; ~; D$ D. W8 u! p: A% B
        Agent(char id) {
, t$ K8 |2 @( X                this.id = id;
  |4 a; ]0 V/ c        }
" M7 q5 y9 o# V: N6 @: U9 C  {4 |0 d( t* g" d6 z! R
        public void agentStep() {
. y3 C! N9 @$ {+ j# E8 q! m                System.out.println(id + ":" + Globals.env.getCurrentTime());
) o1 F* L- A" X        }
$ q4 h- d5 k8 d; ~& p+ h3 W}
8 @7 q- C$ m& P4 ~, ?
1 @' q5 v! s3 u5 @! y2 u: Ipublic class ActionGroupDemo extends SwarmImpl {
0 `+ N1 M) m5 Y8 K8 ]; J        ScheduleImpl schedule;
$ a+ P2 M8 Y9 @+ a3 l* Y        ActionGroupImpl actionGroup;+ W; [7 C9 t$ C- X
        ListImpl list;
8 n# @/ u, ~! ^" {4 r        char Id = 'a';* F4 d, _& K; C* Y- M  S: s# X

1 h& [$ E5 m9 c, n0 {        ActionGroupDemo(Zone aZone) {7 q3 b! b9 Z+ f2 Z/ N$ N$ a
                super(aZone);
, O; L7 J& l. j' X: D                list = new ListImpl(aZone);
: V4 d6 j1 r* G4 \% A% |: a( B4 _                swarmSetp();
$ K: d. Z! ?- U4 }                actionGroup = new ActionGroupImpl(aZone);! H6 `6 `- K! V! ~4 ]$ b
                schedule = new ScheduleImpl(aZone);
/ g3 W6 C. z( [8 @  |+ ]4 i% k                try {; d7 a2 |" m  a, B  [  B1 e9 _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& @. _5 A: `- A( B7 G( a0 n                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. ?4 P+ q1 W0 k' b/ q
                        
4 t2 V0 X) |  V5 h2 i8 A( s8 R                        actionGroup.createActionForEach$message(list, agentSel);' n- B# E% }, _6 }
                        actionGroup.createActionTo$message(this, swarmSel);. `7 Q  n, \# h2 |
                        schedule.at$createAction(0, actionGroup);
& b$ O4 `/ f4 c9 J4 e  _                        schedule.at$createAction(1, actionGroup);9 O  [. s' r) q! v# @5 u2 {6 P: ]# ^
                        schedule.at$createAction(2, actionGroup);! n- Y: }2 J$ x  D! x9 K

8 L- k, I# R4 O" l                } catch (Exception e) {+ n( j' g1 z4 Z+ @4 f$ u& E( _
                        e.printStackTrace(System.err);3 N9 w" ~& I: I
                        //System.out.println(e);. C8 }# z5 L9 n* g' f
                        System.exit(1);. y( c; \$ g0 b$ N
                }! R& e- I  ~. R# f* h+ V5 h! Q

* Z/ y5 B6 ?9 h0 U  o0 I1 E
+ R$ U1 N6 ^( v; T8 z1 ~+ m        }
4 G0 Q& d! B' n5 s- r  f
4 O- \+ q4 ^( |- b' ]        private void swarmSetp() {
8 X2 \4 _! R8 Q. a$ B2 f                list.addLast(new Agent(Id));
( o* s7 d" c1 D$ Z, v; ], ?6 f                Id++;# u2 ^% X1 }  z  C, G' L
        }3 D! a/ N9 A! s' x) p1 J

, ~1 _  b  t5 s# w        public Activity activateIn(Swarm context) {1 B4 Q) a- r' ]" Z5 R% K% h' m
                super.activateIn(context);8 ]; D$ Y" e% d" q0 h& n! W0 b
                schedule.activateIn(this);
; @# D* n$ ?% v6 N8 e$ W                return getActivity();
$ M& d6 X! v( C% U        }
( c5 {* b9 p0 M8 }" V& @+ l  s* P! Y
        public static void main(String[] args) {/ m+ G3 l- ]8 T/ [& P
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 N8 q1 U  p" B: C$ L6 u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);- u9 N5 c2 X+ r6 s! A/ G
                swarms.buildObjects();9 Q. F  T% b) y
                swarms.buildActions();) r( W: @& b# v; T3 i" z) d( o
                swarms.activateIn(null).run();
6 D% l7 ]- F: ^, x. H" l5 x        }
( d  s0 C' T8 C8 l2 S( }3 J; w1 `" u5 }! P9 F
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-15 08:19 , Processed in 0.017317 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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