设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12301|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% j/ c+ R9 W5 o! b, F' e5 o- c3 `7 V' s, n4 }' a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update213 `+ ^: {5 x6 N* W: `" p0 U6 h3 B$ J7 _
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 n5 u/ s1 V$ U7 x' s, z1 R$ `swarm.SignatureNotFoundException
/ E2 ^1 n/ M3 Z- h. B        at swarm.Selector.<init>(Selector.java:76)
* I6 p6 E* Q4 O/ l! e/ r' p$ G        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  g9 G- |8 h7 B7 b
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 q: u& H& }/ l% y9 a
5 i4 Q- m. w4 i: E* G

5 B9 p  U3 L3 k( `' Q% B' u5 [& Cimport swarm.objectbase.SwarmImpl;7 D5 T6 ^7 M, c
import swarm.objectbase.Swarm;
1 L7 |0 C" [* `import swarm.activity.ScheduleImpl;" f$ |$ n8 ?* l9 r" i& |2 _
import swarm.activity.Activity;$ O/ a, U  i7 O
import swarm.activity.ActionGroupImpl;# q" M- C+ W/ _) t+ G% ?
import swarm.collections.ListImpl;
# B1 S) q" S1 m7 v3 [4 F1 L1 l$ B! Zimport swarm.defobj.Zone;
  E6 \# a$ h/ _9 C) s4 himport swarm.Globals;; ?4 P. W# P8 T1 l: E( o
import swarm.Selector;) t, J- A' ?% `( ?0 w5 z6 U' \, E
import swarm.activity.ActionGroup;
# Q# @& ^: j7 \% Q7 y; |class Agent {
# Y, y3 S' Z. A        char id;4 c4 `! [9 D# a* p

7 I7 m7 w1 d0 a3 w4 n2 t        Agent(char id) {
) l* Y2 [4 ]0 R5 B                this.id = id;
. w# t( P) A( G" w+ ^/ }- w        }
. p6 }+ A8 t* |- J2 P6 C  m( k% p; J- \+ l% B
        public void agentStep() {
4 P4 P1 Y) b. |                System.out.println(id + ":" + Globals.env.getCurrentTime());
+ }6 Q* x% H+ ], X0 Y        }& C5 `* ^( H' D& u! ]
}
( L/ ?( X: {& W7 P! _8 ?
2 e) s9 a" u/ [9 o% D+ j  N" ?public class ActionGroupDemo extends SwarmImpl {
8 E7 i2 |! {: |$ j        ScheduleImpl schedule;( J) s1 l5 L4 o# U- b9 f, M7 f
        ActionGroupImpl actionGroup;+ {( G+ u4 M3 a( G! `- {) Y
        ListImpl list;/ Q) t5 E4 C7 D3 X7 R
        char Id = 'a';
. _# c# O. N3 M6 j( i: p" M9 q: q# x) n" `0 m4 _% P$ R0 H
        ActionGroupDemo(Zone aZone) {+ D$ q- A, m, M9 t
                super(aZone);6 g& w3 m! i. D; O# @7 F
                list = new ListImpl(aZone);- `, ]8 U$ E8 E- k4 W
                swarmSetp();
' k2 o8 Y1 n* O2 }8 t                actionGroup = new ActionGroupImpl(aZone);- f: _8 }; ^- t1 L! ]! G  N1 d4 I
                schedule = new ScheduleImpl(aZone);' v/ }0 \' N* g0 F# ~3 N" m+ z
                try {
2 h3 V: v: f3 k$ P                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( d8 t0 {% ?: e( U5 S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; f9 g0 m' S) S  o! U# j5 d                        
. V0 i$ r3 ~- T2 }3 l9 x* u                        actionGroup.createActionForEach$message(list, agentSel);
( o, e3 M+ i: w& |+ c9 d4 a4 D0 o' h                        actionGroup.createActionTo$message(this, swarmSel);
6 o" Z  U( h2 L1 u. ?                        schedule.at$createAction(0, actionGroup);; M" ^4 v' l; M, H; G- J+ X
                        schedule.at$createAction(1, actionGroup);5 K+ c1 C$ O/ S) m3 J! h5 d
                        schedule.at$createAction(2, actionGroup);8 _* h3 j/ r0 p+ u2 P. T% d' q. r! O
5 P$ i. Q2 a7 g8 g6 y% l* z6 `- y1 y) y
                } catch (Exception e) {: U6 _# q% W1 U' y2 ]: t* r
                        e.printStackTrace(System.err);. }- u$ t5 y. ~9 [4 }2 o" \
                        //System.out.println(e);
; o* [. A. B: @4 r& ?* h% q                        System.exit(1);8 X& u& i5 n0 W/ l+ ?% d2 e
                }" }. d% O- Q8 u

4 [0 G, S% ~5 E0 ?) d. b: f, u6 ~8 u+ ^6 \& S% C
        }1 M6 v" U/ l! m# C8 x: K0 S( E
/ l: i) S7 S. k* C2 o% f! y" ^
        private void swarmSetp() {
  @; m3 }) [- a                list.addLast(new Agent(Id));
; @3 x2 D7 c1 L" I0 L$ k9 e$ w5 m                Id++;
* j4 i3 r8 N2 ?( I( R- m' m% s. J        }" O+ o* _' M$ v, ?+ ^: t
# L& b# ~1 q  n% b) y
        public Activity activateIn(Swarm context) {2 R$ D. ^7 i* t* B: i
                super.activateIn(context);
5 d/ c# y' H9 n" e8 d) G3 A* [* T, j                schedule.activateIn(this);
% B4 j2 `( |: I5 J                return getActivity();" k$ J& H* d5 I! z
        }
. J. `6 o) W, X/ A& t+ J$ H- Q7 a
        public static void main(String[] args) {
- i; s% f2 F( R$ r. O+ _7 s                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ N! b& P& t0 J1 ~+ W% k7 T9 y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);4 w5 y! P6 |3 _
                swarms.buildObjects();  ]- D& k& e4 {, {# w$ p
                swarms.buildActions();
/ s$ A6 H1 Z) ?0 H8 C$ b0 n8 ~                swarms.activateIn(null).run();
# |* g* J# X/ \9 l- {( r) p2 R        }
, ~, q& E* ]: j  f3 L' M9 _
" ]5 Q) u" E' c6 x: h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-4 21:24 , Processed in 0.018047 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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