设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10296|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 N/ @1 i: M' n' F3 A9 |* s
9 H8 j( M# Q/ s6 O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 t8 a* ^) t7 m) k; k1 u以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 W7 i$ s+ ~' @$ n2 C, d
swarm.SignatureNotFoundException
- \- n- ?" ~& `( C' R! X. t        at swarm.Selector.<init>(Selector.java:76)
0 Y: m3 l7 @" j  }# P        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). C# p# m; N9 n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ E1 O) R: A5 c$ K, ~
4 B' Y$ ~+ g" W8 |5 G) j' T: i( X

% ~. L% |* _) Q  N. C8 D! S9 Uimport swarm.objectbase.SwarmImpl;9 \: A, z  t/ i9 O) C$ B9 x1 M
import swarm.objectbase.Swarm;
! Y* d/ X. A  W8 u7 B# r8 X0 timport swarm.activity.ScheduleImpl;' M; p: Z  l) T
import swarm.activity.Activity;
  a# D4 N" U& a% D2 Wimport swarm.activity.ActionGroupImpl;7 w+ _  C8 U: a; f" D
import swarm.collections.ListImpl;
" R- m- P* ?5 J% _9 gimport swarm.defobj.Zone; 9 l: L$ w! {) s/ C0 P
import swarm.Globals;8 C( J) O! \, P& F# l" e  I5 E7 G- e
import swarm.Selector;
% q9 h* E+ ^4 T* u, Rimport swarm.activity.ActionGroup;   B2 b  U) w) l% ?% i6 p
class Agent {
+ Q: {1 X. |8 v; m1 T. t$ ^        char id;
( n; r' m' m' m1 f2 X( A" j; L7 q: b! w5 f
        Agent(char id) {1 V+ ~. D0 a, J! Z: \9 I9 X
                this.id = id;, g, a* j* R. Z# z" C
        }! j2 h! ]: B$ |. z0 e

) C4 o' N2 p( \3 y" D/ ?* E        public void agentStep() {; ~5 H( C$ e; G" \' X1 Y: P6 ~
                System.out.println(id + ":" + Globals.env.getCurrentTime());( L. r) B; I: d2 e
        }- }) ^9 V, t2 `; w
}$ [8 c5 i, S, i, h

* n3 Y3 b8 {$ R( m2 Hpublic class ActionGroupDemo extends SwarmImpl {- F1 D% o7 B: t
        ScheduleImpl schedule;9 J, ~0 F& U6 |7 }2 y) D' N/ Y
        ActionGroupImpl actionGroup;6 E5 L  D" [1 Z  t1 A/ @
        ListImpl list;
5 Z( u5 Q* e0 x9 ]' g6 n9 N( S) Z4 e- m$ \        char Id = 'a';0 D5 Y+ U5 c; ~7 ^  S

8 P' i$ w- R& B. B        ActionGroupDemo(Zone aZone) {. O/ a' P3 g: P
                super(aZone);
, g$ e( d0 ], t3 F& v! p                list = new ListImpl(aZone);
( O, I" `" }3 W8 O                swarmSetp();  @' N2 d# H$ ]1 e5 s  C6 p; {
                actionGroup = new ActionGroupImpl(aZone);" K% Y; V- h2 F, n- X% n
                schedule = new ScheduleImpl(aZone);
1 Q( [# P7 X  s' p                try {
$ [& f1 b# J6 D" D9 n3 {                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  p. ?3 ]0 z9 @/ h  }+ H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行# X: }; b1 X4 I( C# |# B. d
                        3 u4 O* S2 N1 w6 W3 b# h6 W$ j
                        actionGroup.createActionForEach$message(list, agentSel);
5 @2 a4 i9 V7 p% h" U! G" |                        actionGroup.createActionTo$message(this, swarmSel);: v' K! x+ i% T1 t* B0 C
                        schedule.at$createAction(0, actionGroup);
& N, @: c7 x4 y* F% H( X                        schedule.at$createAction(1, actionGroup);
0 ?8 H: X4 f' t1 L' z% k8 K) \  l                        schedule.at$createAction(2, actionGroup);
0 `7 f# D$ v$ }0 @- M% ]* v* S# U& J) }) M/ C- U5 q" h
                } catch (Exception e) {
; h2 l+ m, h# A3 ?* I# A2 _                        e.printStackTrace(System.err);1 s$ M+ e) T0 N# l! T2 ]4 b# Z
                        //System.out.println(e);
8 G: u. @: q+ Q% ^+ R                        System.exit(1);% G9 X9 X! V, |$ p! F8 e) A
                }
0 \" c7 k' |+ s
, q$ n  F  b3 ]" ?  T: v7 K, r
7 T7 z' o) P+ G# v3 [" q0 T        }
* G. g2 D9 i. p7 C: x, K9 b8 \
5 ~6 y  S+ K  _/ V+ e0 t        private void swarmSetp() {4 t4 D) w4 |  o/ a" k! e+ U
                list.addLast(new Agent(Id));
& X1 F5 i/ |2 d7 m9 f! X8 [                Id++;6 A5 G/ W* {, }# R: W' J9 H7 A4 L; m6 r# Y
        }
0 |) n- ~5 d- h  B3 H6 @# H1 B
! G, v$ H* Z) C$ b% g1 q        public Activity activateIn(Swarm context) {
6 }0 w  z- U& K! I7 L                super.activateIn(context);& r* O( r- P( I, _7 U. }7 r
                schedule.activateIn(this);/ Q7 Q1 Q' `) {; `9 q( Q6 Y2 ^
                return getActivity();' N9 l; _# Z, a# L* U% U
        }, S' J& c- w; P+ I+ f( E3 g

/ w4 c( i+ |3 f" Z( {        public static void main(String[] args) {
' ?5 D* b. ?+ t0 N8 L+ H                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 [6 v5 i! `! r                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 y& ^! D' ]& v9 \& K% A& H& |                swarms.buildObjects();2 U. d3 r9 ~8 J
                swarms.buildActions();
9 O6 w2 s$ N  L                swarms.activateIn(null).run();# I' S. q& z, g. E
        }
) Q. M: e+ a# |6 k5 T+ z: Y/ D) N# y3 }* U: q1 S9 \1 X& v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-9 22:46 , Processed in 0.014593 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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