设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5924|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% E0 ^( G  _4 p
4 S( N! u: B: z* `" Q' U% Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 n% W8 H' m2 K7 D" F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* h5 p# I  U* z4 D0 _/ Oswarm.SignatureNotFoundException7 Y- f: f, _! \$ ^7 i! W/ ~. e
        at swarm.Selector.<init>(Selector.java:76)
! f" z9 ]0 \9 _# t+ d7 u        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 S8 V. m7 v. I! A% D5 o- p2 r
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ N) T' G' `- P- @6 z" X" l  ?3 H
8 n' x4 K0 l: ~# m
2 X7 M/ g" R$ o* X. D: O) ]5 s+ jimport swarm.objectbase.SwarmImpl;
) k" h9 F& E4 U, F) U. Iimport swarm.objectbase.Swarm;
- @" m; T4 ]% E9 {% i5 z) Y; Rimport swarm.activity.ScheduleImpl;
7 n% c+ i$ l8 }- J3 M1 Ximport swarm.activity.Activity;
1 K9 y% J+ j& U. _" k' Oimport swarm.activity.ActionGroupImpl;
1 N3 O% F9 A/ j" p7 F7 O0 t5 Iimport swarm.collections.ListImpl;
6 l6 [' x# N. s7 M% s2 w5 U9 `9 U& Mimport swarm.defobj.Zone;
: ]( ^+ Q: j6 l0 G$ \7 a$ timport swarm.Globals;
( P, |* C/ w, K; H+ @9 e% ^6 aimport swarm.Selector;
" F  M1 K  ^; S1 B  V" Y6 n! B/ Nimport swarm.activity.ActionGroup; 5 e  i' q2 U* L
class Agent {. x9 a% E# p- Z; \) n
        char id;
* R- V4 W$ Q( P% ?% F- v  Y& B* _6 t" K/ `- [+ ?
        Agent(char id) {
) V! d+ }- h2 e1 S5 b1 I4 J                this.id = id;, b5 _: v7 ^/ P
        }. _# P2 y, M% T3 V: W) c
  e! S" e8 n& A) A) [- H
        public void agentStep() {
" L1 K" y" S) k* m$ n5 p  l8 y                System.out.println(id + ":" + Globals.env.getCurrentTime());1 V* ^% Y! i, j
        }8 @! i. z$ w, e) A0 I+ s
}
# c# e& F, m: J3 h% }% _
! W# G5 C9 f, |1 F4 fpublic class ActionGroupDemo extends SwarmImpl {, R! {  m8 ~9 p$ F
        ScheduleImpl schedule;) Q' i. p7 I" ]+ Q, r- [
        ActionGroupImpl actionGroup;* x6 Q+ S8 K$ Q
        ListImpl list;6 d1 b6 l3 |/ X( H
        char Id = 'a';
  }9 e5 }% d9 r; _) [
; w# R9 ?$ K4 ?- X        ActionGroupDemo(Zone aZone) {
9 V( z0 H; u+ a- b! [                super(aZone);1 K& Y% b0 o5 }! _
                list = new ListImpl(aZone);5 q/ G* B! k" j" l1 g; ]
                swarmSetp();% S" v+ a& C0 |3 O* O8 @+ ]" G
                actionGroup = new ActionGroupImpl(aZone);' l0 a4 G5 R% r
                schedule = new ScheduleImpl(aZone);
* T, F- c8 R: F1 v3 c/ |* R$ t                try {
$ M2 ~, A: ^- y5 s3 l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 E% Y- t5 `- i/ o) A2 B" ~                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行+ {4 x6 L4 n  R; q# a3 o3 ?/ @
                        
  j* o- M0 d! [5 z                        actionGroup.createActionForEach$message(list, agentSel);
( y5 a- ^9 i% ?9 [" M4 J$ |: |. n                        actionGroup.createActionTo$message(this, swarmSel);
  a: {% A' T+ a+ g! B# M& v+ }0 b                        schedule.at$createAction(0, actionGroup);
. ]/ l% L/ P4 z$ Y  K                        schedule.at$createAction(1, actionGroup);7 S$ \4 D; ?+ [
                        schedule.at$createAction(2, actionGroup);% U5 C% F. ~1 O9 ], L0 L

- t4 p' U$ `# l, Z1 H/ z) A8 Y" e                } catch (Exception e) {, l( q3 |) l! {, k  D* C
                        e.printStackTrace(System.err);+ t# h( ~/ |" S' _
                        //System.out.println(e);
8 g1 @! C7 d3 b& I* N                        System.exit(1);' k9 u& C% _) N4 r+ W$ N
                }
! p0 p. h& J2 h; T5 a7 C' g% t% B* L# x7 L
" D8 ?+ b: V6 |+ G0 e- D8 v7 W1 H8 f' s
        }! Z/ r( }* X5 G$ S  X" Y
' V& j8 b8 I6 |/ c. I5 A4 p# X: |
        private void swarmSetp() {$ N0 \+ {5 F6 `* C% J. T, i& d
                list.addLast(new Agent(Id));, P' c! T7 c9 q8 G- a6 ?
                Id++;/ |/ K9 o) x: g8 |9 H
        }- Z+ n% q) }+ [3 `, k& k

9 [7 V8 e: q- }2 I3 v        public Activity activateIn(Swarm context) {
0 {# T  J3 J( w# z+ Q  e                super.activateIn(context);
4 R$ O# u" ~: I# y2 |                schedule.activateIn(this);
' ^" X: N+ [6 z0 y                return getActivity();
; N. m% N0 k# x        }
( l! Z2 _  n4 E$ h( T' O7 D" e  I( j) [/ B
        public static void main(String[] args) {! ?2 u& R  r2 O6 L  c
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 j  s7 B+ j* W) A4 z. T
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
& K& G5 Q, ]; I1 X/ q$ X                swarms.buildObjects();
2 D8 B5 t; G- @* p* T                swarms.buildActions();' C8 n$ F7 [7 D( J2 b. q: c
                swarms.activateIn(null).run();& ~& s  t8 l6 `; W
        }
4 x3 S9 a* w5 t% Q, g- N7 a6 k
' W9 H& e" w3 y) G2 K' K4 O}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-8 04:23 , Processed in 0.014091 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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