设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7388|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* i% N) P1 K$ ~0 l5 y( N9 h( D8 G, Z! T8 L
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 G2 N/ b+ H1 A! E9 H7 a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) F0 A* y8 {8 ~( |3 h
swarm.SignatureNotFoundException1 l+ {# e$ E% y/ f/ K( f7 }1 N  r# B
        at swarm.Selector.<init>(Selector.java:76)
- B4 q/ p' {# H+ f; n9 r9 Z( d        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 n8 R3 d4 D1 Q8 C
        at ActionGroupDemo.main(ActionGroupDemo.java:67)- I& f$ K6 v. m, S8 n! Z/ C5 u

4 v# s; j+ V$ d: R! R# b7 V* g3 x/ q6 m% [( W; r1 i7 |3 |- \
import swarm.objectbase.SwarmImpl;8 F. I0 ]0 N! `
import swarm.objectbase.Swarm;" _4 x, }9 j4 h/ o+ q
import swarm.activity.ScheduleImpl;8 D6 y, s; Z# x6 y, g" @' A
import swarm.activity.Activity;
+ r. j, J& g- Limport swarm.activity.ActionGroupImpl;- T1 w- ?9 B1 W* Q  s; a: G/ [
import swarm.collections.ListImpl;- Z) J+ {6 M1 m5 X
import swarm.defobj.Zone; 4 R7 }$ X/ ]) g/ a' Q6 n. ~
import swarm.Globals;
- h9 p3 b- `6 T$ Jimport swarm.Selector;
4 _8 [/ `# z7 d# ]" s* t0 R5 U/ }import swarm.activity.ActionGroup; ( u" s, B. @; n% H# F
class Agent {) D3 _- O' |, l* }& p4 s! s# ?* A
        char id;
4 i+ `$ t3 M- f" N
9 v7 A. b4 E5 Y2 X* Y7 Y7 E        Agent(char id) {4 E+ R: [; ]! I, S) c$ |# s$ u
                this.id = id;
* U4 ~, ^4 c/ [( L; l6 ]        }5 ~8 @- X' |3 H( C1 l6 a

# H# w& b  v. ~2 G6 R# z/ B        public void agentStep() {% z, N5 x0 j/ b
                System.out.println(id + ":" + Globals.env.getCurrentTime());- V. g0 Y0 ~" I! ^7 d' H0 z$ p
        }3 A3 \" W# b: a. l6 u9 {/ ^
}
. ~3 E9 q/ M4 `* G8 h
% O* [6 K7 N! R+ k/ X# K# r1 Epublic class ActionGroupDemo extends SwarmImpl {
6 V: C5 c# Q' I6 ^2 B        ScheduleImpl schedule;
: t5 e1 A/ h+ ^        ActionGroupImpl actionGroup;
) B+ @; x  F" n( @8 [: T! M        ListImpl list;; N. v7 l. R; O! g1 Q- P7 t
        char Id = 'a';# ^: c/ }7 A. @) }* y! o

5 y0 i" L6 J. H6 f, f' v6 q        ActionGroupDemo(Zone aZone) {! k6 J! e8 S4 X/ u2 r
                super(aZone);
$ R" @- [* M, v* \/ M% P                list = new ListImpl(aZone);
. B! ~; h3 Q* H: O  ^' g/ i                swarmSetp();6 c8 \* x& g( J8 p0 P
                actionGroup = new ActionGroupImpl(aZone);' t' p& }6 U. L9 q
                schedule = new ScheduleImpl(aZone);
0 r: @  ?$ j: G3 `  [4 R& _! M& P                try {
9 P% Z, {" a3 W4 e3 m9 j                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 Z7 B) y' M( i. C  h
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; _) w1 Y0 p  I                        
1 B' U3 T' j: n                        actionGroup.createActionForEach$message(list, agentSel);
# [; w" j1 H1 y. k! E7 E/ J                        actionGroup.createActionTo$message(this, swarmSel);' q* Q: }7 \" v- m6 I/ O& J
                        schedule.at$createAction(0, actionGroup);
' c6 w) H5 U3 {                        schedule.at$createAction(1, actionGroup);
( ?8 G# d4 s- J                        schedule.at$createAction(2, actionGroup);1 x, i9 i6 h2 F0 O" n
% h% G5 D0 u* |4 e+ l
                } catch (Exception e) {1 d: q0 Y) V& M
                        e.printStackTrace(System.err);
! z: ^) d# k2 Z5 K; R                        //System.out.println(e);
8 \" Y( B& [& C6 e5 z! g                        System.exit(1);; V' x0 @: v4 Z- [4 t
                }
9 I* B* C& G( Z, C" r" |) C5 {1 U& Q4 y6 g5 N; X
  w- h7 B+ v% h, [1 E2 L3 E* q+ c) N
        }
7 u0 J7 A7 b: p$ r) c3 z" b9 F
        private void swarmSetp() {- n: C$ l  S$ t2 r7 R7 t' v
                list.addLast(new Agent(Id));
1 w/ E) y8 s, S* V; ~/ _7 ~7 x* ]                Id++;& G3 j# @& x8 j0 b, \
        }: z& ~% X9 l6 e0 H
! c( G' C1 F) j  D
        public Activity activateIn(Swarm context) {
9 J# _2 x9 r5 G6 A                super.activateIn(context);$ b' {0 @3 j9 ~  U2 Y7 S
                schedule.activateIn(this);
: M, n( A' I8 G9 g4 O                return getActivity();
+ y$ y; b- O2 w3 v! X* a4 M; A        }
1 `: {. \. l' u/ \% A1 q/ ]( ~
, n( n$ C# X, ]        public static void main(String[] args) {
8 b* k' |0 y  h* D0 M! l# o' j  y* D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 p) P) v- T) O+ M1 K' c, N
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 \& l" i5 D. E  p3 {
                swarms.buildObjects();
8 m  X/ y$ A4 p+ L3 x                swarms.buildActions();
3 A. v' b' ?7 I3 i/ ]6 p% t                swarms.activateIn(null).run();
. N1 {/ y) r. n4 S0 ?( }3 r        }
' X, I6 ~& Y8 Y
/ h! t2 n  ?  s, Z}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-28 20:24 , Processed in 0.016402 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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