设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13576|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / n: v( ~, y; J! }2 l' V

4 H8 [3 ?' j8 M5 ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) N- ?9 s  A, N$ N/ ^
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 g& T, L+ }% r- M, ]& i
swarm.SignatureNotFoundException
2 ^& x7 `8 U! m7 a$ Q+ I        at swarm.Selector.<init>(Selector.java:76)4 N% U% X. x9 W! }3 D+ i- t: _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 z4 y/ K# ]+ L" q
        at ActionGroupDemo.main(ActionGroupDemo.java:67); V  x' p1 Z# c8 I3 a# f
& V7 \: i+ Z/ F  L/ @

, u& A( u8 p8 X. [import swarm.objectbase.SwarmImpl;
" f% R; ]( }( ]3 T/ a7 Nimport swarm.objectbase.Swarm;
, {- o! _) P- g4 A$ gimport swarm.activity.ScheduleImpl;: t2 A5 ?) C; q9 S
import swarm.activity.Activity;
* E$ c* O( e5 U3 ?1 `) ^+ _import swarm.activity.ActionGroupImpl;5 D1 s. g0 }# |0 [8 z/ P
import swarm.collections.ListImpl;# Z$ H# O4 y& M& O. C8 e- ^: l4 E
import swarm.defobj.Zone; 7 w+ e4 {7 W8 S$ a" ]6 ~. T4 F$ J, k3 `  y
import swarm.Globals;: ?3 b! H% M6 u
import swarm.Selector;
" D1 l9 D( R* J9 J  w; [6 `import swarm.activity.ActionGroup; " a/ L, ^' o4 w/ L' w. V8 y6 A. O
class Agent {
8 [5 D9 |" E% C1 x        char id;
+ W3 r+ a0 X5 v( W4 w0 H& P1 Q. M' e+ o* ]& P" X% i7 Q
        Agent(char id) {% j6 z$ i2 X# c
                this.id = id;
2 n* f# ^- J+ u- }  t        }
$ y& J) |* J1 r# H5 x: R1 n0 z5 P  }+ y6 D
        public void agentStep() {% s9 i4 T  P) ?) q6 n7 L5 H
                System.out.println(id + ":" + Globals.env.getCurrentTime());: C( r* ?* _& T$ \) K! {7 [
        }% Y/ I7 b2 j( g. M
}
5 B0 E+ k! }1 R7 _
: w8 Z9 ]. |+ J3 Mpublic class ActionGroupDemo extends SwarmImpl {
4 ]. E0 w6 |/ {) [/ a  N' B        ScheduleImpl schedule;
) U0 z7 {. b6 E. r+ |' t0 m& p        ActionGroupImpl actionGroup;4 W% z* ~8 F; Z
        ListImpl list;% G% ?& d2 g- v% h- `  l: ^1 e
        char Id = 'a';
5 |7 Z# u3 j) Z, E* f7 ]* K4 m7 e) E6 ^. w; O
        ActionGroupDemo(Zone aZone) {
) P6 g5 x# ~7 u- ~                super(aZone);
6 L; u/ I7 \8 m- f! `$ H+ k                list = new ListImpl(aZone);+ |6 p3 S* P: w& |3 T# M6 A' j
                swarmSetp();2 E4 }; u; x& k3 _
                actionGroup = new ActionGroupImpl(aZone);( W3 `5 ~# g/ X. Z) t+ h& ~! ]
                schedule = new ScheduleImpl(aZone);
8 R7 P- S. i5 j% [( v                try {
- @6 y5 x& [- b+ h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: V+ D+ w1 i6 {$ w7 ]8 l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- Z7 _0 ]: ^2 H! `. x3 s  B; W  M
                        
( M% [$ V2 p- M' K! ?' y% O% K1 d                        actionGroup.createActionForEach$message(list, agentSel);
' ?8 P$ c: r: n# [2 x1 R' L                        actionGroup.createActionTo$message(this, swarmSel);$ o5 x" P& a5 W6 ]7 J6 f+ ^
                        schedule.at$createAction(0, actionGroup);. Q+ g3 u9 M2 \4 f: R) A
                        schedule.at$createAction(1, actionGroup);
! d! P. O2 k# e, N! T6 b) Z& f2 v4 ], e                        schedule.at$createAction(2, actionGroup);# v" E5 O1 J6 m' i5 r, E

% M) T- ~8 l: J9 Q! r7 ?                } catch (Exception e) {* s  Q0 a7 [5 H; T/ P
                        e.printStackTrace(System.err);! |5 b) m; u/ [- x0 _
                        //System.out.println(e);# p# I/ f: u2 p5 E1 S! T, d+ M
                        System.exit(1);1 d" g0 ^- h# z. G  B: h
                }7 S% V1 f3 j6 @% O

5 T) Q. C/ \% p1 |* Y( H, q
. v9 P' g3 A# l5 P8 l  ?        }7 T2 r4 |2 t0 F# n" e* u

2 q: y, y5 y) M, B        private void swarmSetp() {
! Z, f# o' F* c6 m3 G  g+ h                list.addLast(new Agent(Id));
6 p- Q! r3 ^! o                Id++;7 _8 v0 T  }7 S1 D
        }
: C7 M& w8 s* v4 u
' J& q  ?* M) L! O# [5 j        public Activity activateIn(Swarm context) {
# c8 {0 v; J0 S+ T  M                super.activateIn(context);' ]2 D* e; X. U+ R- f
                schedule.activateIn(this);; K* }% Y5 y+ g  C8 f' c
                return getActivity();* h# f3 V7 _/ P+ i
        }
2 L% v+ D2 ?' P0 j, ~6 @
, l% S! D/ G; [+ P1 C        public static void main(String[] args) {) q5 \) g; h3 g2 {+ n5 O, l
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 s/ e8 k3 C" p/ |2 x8 \                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 Q. F% m/ x$ h2 ]% \3 X! M1 y" N                swarms.buildObjects();( J4 b( J2 h: L+ M4 R
                swarms.buildActions();3 \, I' c& ~, v1 ?  F0 t, |
                swarms.activateIn(null).run();: j3 J- I& ^; k% ?5 i, ?$ d& V
        }
) z% K6 i- F: t" e9 [. P5 Z0 k, `" n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-11 17:19 , Processed in 0.013972 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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