设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6873|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ W6 l/ u; v; z
* r! j9 s, j6 w) w4 s' ]; r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21& h: F2 C6 c& P5 F9 ~) a9 G) e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) Z3 C% F1 X2 _% \) kswarm.SignatureNotFoundException) i2 ?: \" T) x5 a# I, ^: A
        at swarm.Selector.<init>(Selector.java:76)6 d5 C3 _/ x- k  l, K
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# U6 L! |2 _0 W- A  ~        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ R  D' U% c: \6 o5 p7 ~3 n
8 v" j6 u8 b4 h7 t4 B' Y

' Q) j7 o- J$ P4 j- t. kimport swarm.objectbase.SwarmImpl;* C  C1 ~: p! u& p& w
import swarm.objectbase.Swarm;
$ L' r) Y, U! j8 Gimport swarm.activity.ScheduleImpl;
! {+ h( F3 ]- A" _4 g7 N) a! Cimport swarm.activity.Activity;
& [6 q; d( F3 g% r$ Z( |import swarm.activity.ActionGroupImpl;9 b/ F6 Y3 \9 ~8 W
import swarm.collections.ListImpl;3 F( s4 A1 V8 s. s
import swarm.defobj.Zone;
' K+ Y$ @( I2 v7 t' |import swarm.Globals;% S* C/ a7 w$ H+ c. H
import swarm.Selector;: Y" {+ f: B$ g! I+ y/ K
import swarm.activity.ActionGroup; / z1 G) y- l; E4 g
class Agent {  K% o5 I* _% s+ W
        char id;- H" B: i- E3 A9 i: E4 [

8 F# p$ D6 S" c2 F% s  U        Agent(char id) {2 A# w8 X! \1 N, o# y7 G
                this.id = id;
0 J  ]: u8 i4 b* M- J  Q. O        }
% d' t. d% W: O( ?& w+ c8 w
6 }8 d2 E# g  }9 j9 s8 c4 z        public void agentStep() {  D2 M- V- e2 X, t, S/ g4 z* N3 e
                System.out.println(id + ":" + Globals.env.getCurrentTime());% V# D! o" l+ r! A: J/ {
        }+ q' H( o( `% i5 K1 L! X7 Q
}
% N" E6 V) c# H, W
0 Q& B. n# b# c/ z- R, U: \/ upublic class ActionGroupDemo extends SwarmImpl {! m: n2 t: S  \. Y) ~5 v% k
        ScheduleImpl schedule;. q" {: S. W4 V+ d' I& F0 N8 i/ |: ]
        ActionGroupImpl actionGroup;
& x5 e- K  P6 w2 l8 m        ListImpl list;3 M  Y$ y4 b4 P7 X  K- @+ S7 [& V
        char Id = 'a';
  R1 m$ p/ r6 A3 ~4 L" M' @
& Q% A- S0 X; v7 L        ActionGroupDemo(Zone aZone) {
* i5 u" Z# W+ c( `7 \" V! I# y                super(aZone);
) v+ j0 ^" q  N3 q  @; f6 n                list = new ListImpl(aZone);
' p& g) _' k& ~8 v  O2 n$ S+ G                swarmSetp();
  `* w- S+ V$ Q1 f8 A" U1 j                actionGroup = new ActionGroupImpl(aZone);6 y3 I  v8 ^9 ?. g
                schedule = new ScheduleImpl(aZone);8 \& L  E1 |6 K" S4 j
                try {
# D& j0 t- H, U+ @, U                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ ?) f* N3 ^4 @# g/ n! O# N, J
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 l0 K! h7 v" j; m. U/ a# q7 L                        
+ t7 q  O: A, p, U; O) V' U                        actionGroup.createActionForEach$message(list, agentSel);/ _" `2 E" X# C/ z1 u) I
                        actionGroup.createActionTo$message(this, swarmSel);
8 ^: y- w2 a) R3 m& ]& |$ c8 ^                        schedule.at$createAction(0, actionGroup);8 Y7 g/ Q# p& ^# \, N9 ~
                        schedule.at$createAction(1, actionGroup);& R, E7 ?5 Z1 w3 c
                        schedule.at$createAction(2, actionGroup);2 e- M3 `' ~1 D, T

( F7 o1 `/ v* h. P8 P4 \                } catch (Exception e) {
; M% p) j/ f8 ]/ T& J0 Q                        e.printStackTrace(System.err);  C8 _! W( L5 G, X3 F" E
                        //System.out.println(e);- N, R. l5 o& m3 v1 R' Q, n
                        System.exit(1);! r$ H2 o6 C2 W; c0 _- U
                }2 \! ?  b6 H6 [

2 L, n6 t  u; `! d9 F) h- {8 `  ~5 a
        }
" k5 v  V( `; T- M5 f- F, F
1 T2 X, b- p: y; F        private void swarmSetp() {8 t/ P  ]1 O0 U. O" p( y
                list.addLast(new Agent(Id));
. x; u4 W" ~8 z% E                Id++;
2 G$ Z! b5 o( G* N        }
+ a% g9 ~$ b: D
& v  B% _* T. r# k" Y: B5 T, Y        public Activity activateIn(Swarm context) {
" P3 Y# h# G. S: `8 }  ^5 l, W                super.activateIn(context);
3 i. x+ w: a, s) i                schedule.activateIn(this);
6 h, b9 L/ c$ C2 Z3 r( f                return getActivity();
$ L, I  _) B* q/ A9 t        }
: o, ^! B3 G+ ~: O" B  I/ y- X' e
# V& B$ k# M9 U  S) G        public static void main(String[] args) {& P6 ]6 R/ O  [/ g
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ C  x* |2 Z  ?/ _: Z) g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: e- Z$ ?; q1 d; q$ n+ K; j
                swarms.buildObjects();. t$ f  v; C/ E- h/ {" u4 v
                swarms.buildActions();. B' J* N3 P0 G) ~( \5 c4 u
                swarms.activateIn(null).run();2 N. m# Q6 L2 S6 \
        }
+ A  P7 u0 @/ l8 W2 T# s' G. p, ?1 G3 R2 s+ P: b
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-11 20:23 , Processed in 0.018208 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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