设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13264|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + Z% T' |& o* y- D8 u
+ U) d5 j: x# I0 C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, H& c/ V1 O" Q9 K2 j% ?' @0 ~% C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 R& K$ ^" ?% d1 d6 vswarm.SignatureNotFoundException- C$ _2 z  [: c: A% d* |2 m8 X% o
        at swarm.Selector.<init>(Selector.java:76)
8 q+ E, D: H% s' d. ?' `6 H4 y2 k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ ?( B+ @1 w- {        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ H9 ?) Y* O$ o" S, w

* l2 C$ I" \; j! w+ i; w# J
6 |8 Y4 E7 m! S$ N" |import swarm.objectbase.SwarmImpl;
4 H( E  p& y) o# c' `import swarm.objectbase.Swarm;. s: \- C& a7 ?/ L
import swarm.activity.ScheduleImpl;7 s8 I0 X1 U, }+ t" G. I
import swarm.activity.Activity;
# ], ~/ x' y! z1 U" Dimport swarm.activity.ActionGroupImpl;
( ?/ [5 y1 f7 o4 M# ~6 eimport swarm.collections.ListImpl;8 x. |; l2 P! J6 }0 d
import swarm.defobj.Zone; . k* ]: \+ f" {
import swarm.Globals;
0 S* F: e( o' I, i  Nimport swarm.Selector;
& i& m. h+ e: u4 b# i+ q% M! v. Iimport swarm.activity.ActionGroup;
! v" {7 D" G" {. g* f  W4 Nclass Agent {
, Z9 a8 P6 H" p, C- x3 Z: \        char id;
# ~# J* S: `' R5 n( C& x: J0 Q. v/ a7 l# q# z/ ?6 f
        Agent(char id) {. y2 A% N. O7 P3 z* z
                this.id = id;
) v& T3 B  T; U( I* @, z) H) y        }
) h7 V  V& M% b7 c$ h' @% ~' R  a6 ]2 }1 s
        public void agentStep() {
- j+ G% }" R1 L! B0 a                System.out.println(id + ":" + Globals.env.getCurrentTime());- a" {. B# o$ }+ ^: l' t
        }
& x& W2 p9 i+ Z; Z. O}& M( m) k8 G: x7 j$ X) J7 {2 e
1 O2 C/ \& s; r  d' D
public class ActionGroupDemo extends SwarmImpl {. i7 Q9 \$ a- ]6 K
        ScheduleImpl schedule;
  V. H. F0 H! `        ActionGroupImpl actionGroup;
; q: L2 }6 h3 y# w: e7 Z& E        ListImpl list;* x  J$ ]( \2 N# Y: q
        char Id = 'a';
( ~: W3 B! m! ?+ U* C6 A7 ^! n" y" q. l! y  l0 `
        ActionGroupDemo(Zone aZone) {
1 @" X- W+ b, ^4 M2 p* m+ M2 W" b, }$ J                super(aZone);
6 K% d* W# [) Z9 U* q                list = new ListImpl(aZone);. y+ e; |. \: y8 B3 D
                swarmSetp();" M6 C9 X& e* ?6 |
                actionGroup = new ActionGroupImpl(aZone);. S1 ~/ A/ h7 D
                schedule = new ScheduleImpl(aZone);% S$ |3 Q; u6 x( L! g+ U# B
                try {  m7 g- l3 [3 @! w' R
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* k2 O) B8 K( q  y% m! ]
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( l$ j$ y, |3 k: N/ |# z                        9 g) H" G* s+ U4 P
                        actionGroup.createActionForEach$message(list, agentSel);
9 a7 T2 l5 Y7 {$ D  P$ h                        actionGroup.createActionTo$message(this, swarmSel);
, Q  V* A7 C0 N4 G* W* p                        schedule.at$createAction(0, actionGroup);
4 `  Y$ U1 h- N                        schedule.at$createAction(1, actionGroup);
( o% |5 r. w7 E8 y6 ~                        schedule.at$createAction(2, actionGroup);: P, ]- T" E/ Y1 }9 z& T) F1 o

' v& E5 Q2 w9 B                } catch (Exception e) {! P5 s, B5 {% R* r% i$ h
                        e.printStackTrace(System.err);
$ g4 |2 L) o6 ?$ t# |" H                        //System.out.println(e);
6 B. |; b  U2 z% Z) a" l2 @% k/ [# X                        System.exit(1);" G9 U' o7 n% x4 K1 z# F
                }$ I2 z9 R9 r- X# q. l: j; R

1 I+ T7 [+ }8 a- y1 r4 p6 w: V" o; K7 v5 B# Z
        }
6 V/ U: I: g% i$ m+ Y' A" ?. d7 D
        private void swarmSetp() {
! w7 e( U* S- K+ R                list.addLast(new Agent(Id));
- ]0 G8 r0 R9 i" m' N                Id++;: G$ K2 Q, J9 g( Q1 `! Y. @+ |
        }
4 Z+ q; T/ Q7 z* r" J' @9 B! E% T3 K
        public Activity activateIn(Swarm context) {9 f0 h5 e" V! |  ~
                super.activateIn(context);
0 \3 C7 b* X: Y# y: w# m8 [; S                schedule.activateIn(this);* I  r' m4 Q! O& ^; T
                return getActivity();5 Q$ h& ]9 T& O( q
        }
' i' K  J5 O& X- P) l- E: d, q7 Y4 z/ v$ l# Z1 ?3 ^$ d
        public static void main(String[] args) {
1 F! o' [! ?7 z  ]                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. u( r' n- _# `3 L" {0 T+ J
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 R( t; g+ h; J0 z& k. e# |9 ^" e                swarms.buildObjects();: V5 d5 r8 [6 V# [4 ^
                swarms.buildActions();1 i, O2 V. t7 c7 n2 H
                swarms.activateIn(null).run();4 P3 N+ O! Y- l7 E. U
        }$ H' S9 w% \$ E( O5 W4 C) g8 ]4 f
9 Z7 U( ]$ w0 g- D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 06:37 , Processed in 0.021463 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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