设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10599|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 e$ K1 n& a" V2 O. t! q  F7 [
4 p$ k6 @9 o5 A- B, r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 E9 @. Q0 Z; a
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
7 O* k# c8 W+ {7 w' k  Aswarm.SignatureNotFoundException
# R4 T% a* Q6 e( ~        at swarm.Selector.<init>(Selector.java:76)
% w' c" `* ]: P4 w, q# i        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  H/ V# {* h, j( I2 r8 h+ S
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ h/ `" P2 v! L) K, o+ y

; y+ {1 N+ ?( @/ k. K2 |3 {+ q- D' n  Q. D
import swarm.objectbase.SwarmImpl;
# v# R5 v5 c# w/ n  Iimport swarm.objectbase.Swarm;
- B/ U) s& O! e/ A* E- fimport swarm.activity.ScheduleImpl;+ ]. _& @/ M0 G  Z$ p- Z
import swarm.activity.Activity;
3 A8 H) n% @) p& rimport swarm.activity.ActionGroupImpl;$ w4 X0 q; E" |- K
import swarm.collections.ListImpl;
2 }; B, x, n* @import swarm.defobj.Zone;
6 x1 _5 K7 s+ C1 ^, Dimport swarm.Globals;# C' ]' j/ U4 l2 E+ i4 K
import swarm.Selector;5 T& t2 H6 W6 s6 d. H+ ]
import swarm.activity.ActionGroup; 0 t& s3 {$ I1 B
class Agent {
5 @" i) N1 Q1 E4 _6 i+ I9 j        char id;
! m4 v# g/ M7 g5 L" l. j6 D& V3 Z# n% n$ c8 M; [- S9 Q* Z# K
        Agent(char id) {
: V+ X. F- ~  [2 C                this.id = id;
3 y; r9 I( g) O/ v) e/ n: D% R        }
& n6 i! @+ i5 n' s
- V& y# W) D2 \" ^& J& X: j; v        public void agentStep() {9 e( O0 r+ M; ]4 e# R* A9 l
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) s. X, C, o5 v        }6 ?" n# Q6 H! S! U5 B1 A
}/ j. u" M' |6 G! o# ~* i0 f

1 Y/ Q4 k8 \* S" [public class ActionGroupDemo extends SwarmImpl {) _, Q8 O6 }# n( G2 n# e9 ~
        ScheduleImpl schedule;
$ E1 g0 n! K9 C! K$ C! a% t: H( f        ActionGroupImpl actionGroup;
1 |. [  X" F' |        ListImpl list;
3 R1 S% q% `$ e$ s% C6 F+ u4 p; T        char Id = 'a';  k' G  {8 P) e6 [9 C$ A

3 U  Q2 P6 H1 D* n) D        ActionGroupDemo(Zone aZone) {
: v5 Q: E! s  c5 {( O                super(aZone);
! ^# x/ G' X/ I" g                list = new ListImpl(aZone);, f9 r3 d' e! W; l
                swarmSetp();# U+ r6 z8 L2 m) e) t% O
                actionGroup = new ActionGroupImpl(aZone);7 ~+ v2 E' ]9 E4 U; k
                schedule = new ScheduleImpl(aZone);
. ^5 M+ d2 m8 W  ]2 p                try {! J5 B$ u- ]- w: I. x- [
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);# r4 D$ ~0 d$ ?  a" o
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& A, z; L& {5 }3 s4 u
                          J1 @8 e0 n3 o* S3 U8 J( L
                        actionGroup.createActionForEach$message(list, agentSel);, d9 {0 F- W$ o, D1 \
                        actionGroup.createActionTo$message(this, swarmSel);
9 V) c! v  t( i5 ?. J/ t4 h6 R' A5 G                        schedule.at$createAction(0, actionGroup);
3 }5 b- C' v, V8 l9 O' y                        schedule.at$createAction(1, actionGroup);6 X$ `, z1 D: w, }
                        schedule.at$createAction(2, actionGroup);+ \) m) q8 y7 Z* v# R/ @2 H

: y" w6 j# n9 v% T, o  I                } catch (Exception e) {1 ~5 N: r1 v  M% e# j# v2 G
                        e.printStackTrace(System.err);
% O1 _# v, }  B2 w5 T0 w                        //System.out.println(e);
$ B! p% y3 }5 K3 }( l( {                        System.exit(1);
( _( n/ K! V% ~  g3 ^                }) N6 u. ~/ i+ D& c/ O0 l0 v

1 G( ~/ v0 l5 V! P: c" ?7 N* @6 m5 h
        }  T# M0 O1 s( R# P+ @

  a, R* r# a* Q2 w1 T        private void swarmSetp() {
) O4 C" t' r: d$ o- n5 n                list.addLast(new Agent(Id));
8 {* q, @( ]* H" |* f4 x% _) M                Id++;; P6 J2 u3 k. `7 L- g3 }: P
        }
) y3 e# W) c; s5 n: p# N4 A! b( S* G. `! R
        public Activity activateIn(Swarm context) {
# \: F  I* g( Z" U  B                super.activateIn(context);
. ]9 \5 W  p* O( R                schedule.activateIn(this);
5 d3 ~# i4 P; W7 \" ?, A                return getActivity();* ^5 T# {: f2 X1 A
        }0 u0 A" f. ~* Z
6 v! S% j* v* B2 f# R* |+ V
        public static void main(String[] args) {
# J1 j( {, h  _6 Y3 ~' D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" q6 |/ S4 P7 x1 c                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 L# @9 U5 ~+ s
                swarms.buildObjects();0 c/ d% u9 o- b. M! t2 C+ H
                swarms.buildActions();
: n2 [3 J$ A; t5 p# u# H                swarms.activateIn(null).run();9 q& [' P5 t+ f8 t9 H% ^
        }9 ?* Q" |( |: \1 M5 q

3 J! Q- z: k+ O}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-18 05:39 , Processed in 0.017078 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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