设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11609|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
- O/ o; D# [0 V- d" S
" v2 h, F* P$ k  B5 A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ a' R! Z$ X0 |# w$ W# ?$ ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." `4 I' \2 x2 A( w& e2 I9 \' ]/ j/ Q
swarm.SignatureNotFoundException
% ?6 m$ l  s0 C6 v        at swarm.Selector.<init>(Selector.java:76): _8 a3 `! Q. _9 {
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 A" ?) K; }7 f$ _
        at ActionGroupDemo.main(ActionGroupDemo.java:67): S( j8 o4 ^& a: J9 D0 _
; l' w$ U* y" q) |* F5 N

; G# T2 }7 Q- [3 D) E% z( n) aimport swarm.objectbase.SwarmImpl;8 s/ `  Y- A$ {1 ~  ^; T
import swarm.objectbase.Swarm;( U$ [1 P9 n. `  E" t2 g
import swarm.activity.ScheduleImpl;- V5 ?/ Q% O3 W: [  Q
import swarm.activity.Activity;' m2 O9 d' ^% f& x% B& `
import swarm.activity.ActionGroupImpl;5 g; y5 `% X" V' Y+ P. n, ]$ K
import swarm.collections.ListImpl;
. Z6 `$ J7 a* E8 m' K& }, y, Rimport swarm.defobj.Zone;
5 o  Z- M3 v) u" ]; Iimport swarm.Globals;/ c1 e' u+ M# K8 U6 k1 O
import swarm.Selector;4 @1 j: v0 X' h. @& A( @2 `/ Y
import swarm.activity.ActionGroup; 7 Q( e% u5 J8 a5 @9 d
class Agent {1 Z' c. b, g* r6 J
        char id;, W4 o4 A9 P' Q6 P8 e! e+ |
9 Z  w1 r4 [' G9 J! r# _
        Agent(char id) {+ {0 D; O$ F! a, \
                this.id = id;0 z$ q! C4 t: }' C% d2 C$ ]% D
        }
$ M4 l: G" U+ _% C
3 L/ b7 J: ~7 e& W        public void agentStep() {3 W4 F( C0 ~7 v2 Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 m3 Z8 x1 ?8 j) A9 x( U# w) L1 S        }, L5 z: z* s/ i- g) q- U
}
7 u2 w* Y7 ~/ R1 P! A" z) n/ c2 v; ?4 g% a8 v, |3 C' f8 @
public class ActionGroupDemo extends SwarmImpl {8 x# X) W1 A; F! ~
        ScheduleImpl schedule;
% W7 S( }) M) r5 A! v* V. d# T- f2 m        ActionGroupImpl actionGroup;
3 i* }/ B- X% C  Z        ListImpl list;) A; v% G1 j$ y
        char Id = 'a';) ?  a5 r% j4 O' n8 i! r

; P5 c& k2 y5 ]        ActionGroupDemo(Zone aZone) {% e3 }& D( I8 p, r3 V7 r
                super(aZone);
$ Y" E: L5 v3 d0 K                list = new ListImpl(aZone);
! m" @5 u9 u' s, W: e& V- J                swarmSetp();
+ W" V4 M) U2 N# b1 ^8 b0 \; A                actionGroup = new ActionGroupImpl(aZone);7 Y$ D* Y* p% M9 z  x3 k; V9 b
                schedule = new ScheduleImpl(aZone);
  o1 c: r. U  i, \6 J6 o6 J: {                try {
) m0 M$ j& V* k2 \4 O% C. L( N% {                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 z2 w5 C! x- m                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) O. D8 |. k' d- f6 I. R1 P
                        
* s/ g7 ^8 q: U/ y! {5 {                        actionGroup.createActionForEach$message(list, agentSel);
" O* S8 M- K; s& k                        actionGroup.createActionTo$message(this, swarmSel);3 P: h# q4 k: e" T3 Y
                        schedule.at$createAction(0, actionGroup);
: O1 N; z# t8 |' _6 ]3 d                        schedule.at$createAction(1, actionGroup);% H; {7 L: W+ t% [+ n0 f# k. P
                        schedule.at$createAction(2, actionGroup);" Z6 Q3 s% D; z6 p$ _* m$ S
; }$ S' h5 u4 \
                } catch (Exception e) {' K7 g0 ]0 b3 ~& O/ i
                        e.printStackTrace(System.err);
3 D. y! R+ P3 H4 F                        //System.out.println(e);: w, P* i  c% ~. T' h" g
                        System.exit(1);
8 Y, v1 j) \2 n8 f3 _- G3 H                }
3 m  [0 e- e; U1 N/ H6 a8 f, E2 c2 X% o

$ W, P. P! r6 R9 J        }
. T& l5 o; s6 u2 C! V: s4 z+ w, f1 ]
        private void swarmSetp() {* B( R* V8 b/ d( i4 a
                list.addLast(new Agent(Id));+ p9 l0 L3 n# X3 n1 A
                Id++;+ r4 X& |2 `, r' v1 |" F3 |. i
        }* M- P* i5 `, n6 q5 ^/ @$ ?2 o; l
/ L& ]" t$ m& V; B. O) ~. z
        public Activity activateIn(Swarm context) {
0 D1 N. ^8 s1 B) ?4 ?5 h3 R7 f                super.activateIn(context);* }& F8 E6 i  J- v
                schedule.activateIn(this);
+ b+ e) @& T$ Z" d3 D9 m                return getActivity();+ `* p: b& I+ ]# h! R. w6 l$ ]
        }% p! L0 h: Z% Q7 `

! u! G& g! T+ y! i) G1 r" Z        public static void main(String[] args) {
- K3 N/ s6 R% Z0 [' ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 k$ {; P; R' x+ E2 k. f4 B% B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);" [! C5 t6 h, ~  b, W' E# P
                swarms.buildObjects();- o0 j3 o7 y9 ~6 d, Y8 ^
                swarms.buildActions();8 e. @; {' K9 q" i) x% [4 {! Y
                swarms.activateIn(null).run();: u9 [/ _1 c/ T
        }
# ]5 Z: J5 T1 i) S! i# g2 B6 h; m6 Q& x4 Z# q
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 01:48 , Processed in 0.016241 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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