设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9063|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
' k. t5 `! G' U
  L: y; o/ v% }  G4 |$ |本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) N0 K7 F* `  m' V) W6 ^+ J以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: ?# J4 T5 j+ K+ }" vswarm.SignatureNotFoundException9 a& c6 o* r3 {9 {/ H8 N5 Y! d
        at swarm.Selector.<init>(Selector.java:76)
$ o3 i. `/ O5 v! K' z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ @  {/ e; H7 Q: c6 W2 u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 b0 h" G0 ]+ T5 W7 k5 n
! ~4 Q# h; j2 L
2 h  F2 J4 n" N8 [; W: v$ }
import swarm.objectbase.SwarmImpl;
' z8 G# U- O5 B! Z+ ^- eimport swarm.objectbase.Swarm;2 y& j/ }# R4 `7 B1 l" ~' Y# n% i' E9 \
import swarm.activity.ScheduleImpl;
# j7 \/ C0 Q4 G9 h, rimport swarm.activity.Activity;# S  G9 r* p% X
import swarm.activity.ActionGroupImpl;
  r+ G$ M* R4 P3 ^0 L7 @" y! Limport swarm.collections.ListImpl;' B2 [( Z0 ~7 z
import swarm.defobj.Zone;
1 Q4 }9 @! A1 J6 j+ `3 fimport swarm.Globals;3 t0 l! Y0 ~; ^7 S% s
import swarm.Selector;3 t/ Y9 c0 x. J$ b
import swarm.activity.ActionGroup;
; A8 u1 h& {$ N- w3 B/ Oclass Agent {# f. G. k  n& L6 {6 G9 D& |* x" `1 j
        char id;
% ~( D% \; @3 R, i# j* ^0 E, w1 M* J6 G8 J. d* s
        Agent(char id) {* t* i2 b& j3 W: ^: B1 z
                this.id = id;: M* @$ M5 z5 n' K  z9 H+ p0 S) w
        }% G7 `+ ^3 {/ R- ^

* j+ U' Z+ g0 y        public void agentStep() {
: [% r' ~* Q2 ?0 l7 L                System.out.println(id + ":" + Globals.env.getCurrentTime());4 O1 q9 r$ S5 \: q! G
        }
, s; N/ D: m6 q2 c8 m}' f1 _3 Z$ f; M4 ^4 [, K2 b9 O8 d
+ h6 P" y6 a, \2 ]  L+ K
public class ActionGroupDemo extends SwarmImpl {/ V9 [% n' m# G! M( |
        ScheduleImpl schedule;
, _% N. @7 r0 f; r  h        ActionGroupImpl actionGroup;6 H. |4 q" C! u0 |9 w6 j
        ListImpl list;
) e( ^4 o% [& V        char Id = 'a';
4 k+ a3 ?( E* H: S7 D' W% V5 ]8 z2 ?3 q
        ActionGroupDemo(Zone aZone) {( z% D2 j0 _5 ~' b
                super(aZone);6 V9 ]( h. M: E1 j- S7 t$ i
                list = new ListImpl(aZone);1 i, }0 H; u' k0 d
                swarmSetp();0 j( F) |3 l1 Q! q
                actionGroup = new ActionGroupImpl(aZone);
' k: y* u& n& `- C                schedule = new ScheduleImpl(aZone);
# p" _9 Y* \, p! Y7 n( P) F3 C                try {; Q# ^5 B; l  d3 t9 w5 Q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' a1 r& ?  [" u4 ~                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% W3 e$ J0 B  Y9 G0 z- i# y                        
/ ^* Q7 l6 o0 N                        actionGroup.createActionForEach$message(list, agentSel);
: @( z8 w- x0 S" @) E, X                        actionGroup.createActionTo$message(this, swarmSel);1 H' u: N1 Q$ W2 s2 {
                        schedule.at$createAction(0, actionGroup);
% d/ f( Y7 p" v                        schedule.at$createAction(1, actionGroup);
) R) g# B# P. u6 [. S) V, B                        schedule.at$createAction(2, actionGroup);
# O* @% T, F/ A7 O
( B) N3 l+ j1 Q+ A- P) l9 @                } catch (Exception e) {
2 T- {# |6 e: S5 A# X                        e.printStackTrace(System.err);: L( Y, c: V* d
                        //System.out.println(e);! H+ d% a1 `# M/ g
                        System.exit(1);
. s& h6 C& U. c) R5 p                }9 d+ J2 C2 t& v! l, P
# V4 d8 D$ l. J

. B2 b- d" G/ _. O# C        }& E! }. E1 t/ l) X9 ~

  i/ w, H5 S( z) [        private void swarmSetp() {% k# F, O2 G& K+ [
                list.addLast(new Agent(Id));, P; `7 h9 _# R- j3 ^3 \
                Id++;3 R9 K* M, g: [/ K% R2 Z* g5 s
        }+ G1 r" ?) C0 ?* X+ N# j7 `
# j! I9 S7 h# y8 F% s' r2 n! L0 a
        public Activity activateIn(Swarm context) {) a* Y; x- P5 J  x8 g
                super.activateIn(context);
; q& G# c; x  Z                schedule.activateIn(this);
& B$ p. ?2 g  o  q: M                return getActivity();
* Z/ ?& C& [+ _% ?        }3 B$ O+ Z4 Q6 i! x. v+ k

  F$ I; p# y- m        public static void main(String[] args) {
& W) e4 B$ @" {7 [* O) K                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- v) A1 t" ~1 g) G8 k  W8 e
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
' h# o9 j+ T- c% V                swarms.buildObjects();( q, D; W' u: W6 X8 J! U3 q
                swarms.buildActions();
+ b% n! g: w6 K: j* P, I                swarms.activateIn(null).run();" _" r8 s9 J  a4 d" \
        }1 Z. z! b7 Z- z8 u! A2 ^
( G. a7 z& S5 i) S' ]/ `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-30 10:59 , Processed in 0.013082 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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