设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8634|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 t8 l  H( x7 ~1 G9 x6 t: g

/ g. i3 f1 q+ o4 @! k1 ?本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) \# y7 d$ ]' ^( U5 @3 [! L以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' P3 X% \! a( S" A
swarm.SignatureNotFoundException; c, \1 V4 f8 P
        at swarm.Selector.<init>(Selector.java:76)# R" L# r4 H; ?' }; S- E. Z  q' j
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* s+ A  K' S" i9 X, u  i
        at ActionGroupDemo.main(ActionGroupDemo.java:67), r2 T- v0 \: o5 T$ W! o8 Z! {8 x
7 ?* N" ^$ B. l5 N  c

1 ?% _& K" h% A4 D( y1 @" y; @import swarm.objectbase.SwarmImpl;0 P& x1 A( e9 M# K2 p3 o
import swarm.objectbase.Swarm;& K; r! K& E" _( w3 U3 |" i7 a
import swarm.activity.ScheduleImpl;) o/ g" g. w. N3 `: M5 N
import swarm.activity.Activity;" l  J2 m- y5 T4 E: E; j& E- x
import swarm.activity.ActionGroupImpl;
% R" ?6 R  f" qimport swarm.collections.ListImpl;$ {: ?0 ]+ v7 {+ r5 i
import swarm.defobj.Zone;
4 E+ l& F6 Q9 B4 q; A  [import swarm.Globals;0 p$ t. u# h/ F: m' S! G6 T
import swarm.Selector;
, |% _6 |+ s2 [. `! S3 ]import swarm.activity.ActionGroup; ; d: }4 Q7 d5 u& A
class Agent {
7 f5 \- A4 K- s) F6 {* [0 Q* E4 Q        char id;
% F- [5 Z3 e, k+ o6 U/ v( z9 r; u7 d6 Z- F; m
        Agent(char id) {
4 [% `3 u* D- [; r! g                this.id = id;
* A/ r" t) {) M8 F; G        }
" `' U, l4 P; Z: q5 @
: L% a6 H5 n% k6 U$ W0 W        public void agentStep() {( W, B( i9 {6 Y' ?8 U, N
                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 `% a  W3 P6 E: H7 C- v8 G% d( p        }
. C1 C% ^9 n% Q* [4 X9 x+ h3 `# w, I}
& d# W2 R9 _# {( b- Q( C
4 w6 ^: b+ p  Y: Z' ~" j6 Rpublic class ActionGroupDemo extends SwarmImpl {
- `7 S. N1 T2 B        ScheduleImpl schedule;1 p( \0 q; ]& ~9 n
        ActionGroupImpl actionGroup;! x9 S/ G* L  F
        ListImpl list;
5 }/ w# H8 P& Q& D% O        char Id = 'a';
# W0 I/ I5 N$ z' X$ j
0 ^) y- I: ^. h2 X        ActionGroupDemo(Zone aZone) {
3 W" @& @% z3 G                super(aZone);) Q& J% J% G- C0 b
                list = new ListImpl(aZone);9 O; P: N# s" R! O! c
                swarmSetp();
7 m' s& d( M3 q0 K                actionGroup = new ActionGroupImpl(aZone);
4 I+ g+ v! U7 i                schedule = new ScheduleImpl(aZone);0 ], w8 ?/ H' D8 Q' j
                try {: o- C8 B2 L) l4 w
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  L9 e8 g! p# \/ U2 @: H9 g1 X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 G" S$ V) l. O3 \* l
                        
+ i& f3 B3 s# Y6 ?; `                        actionGroup.createActionForEach$message(list, agentSel);
4 a/ c5 A2 T( U$ v. U) j- |. G7 O7 G                        actionGroup.createActionTo$message(this, swarmSel);
& F! [  K8 e2 V% ~7 l% P' g/ o                        schedule.at$createAction(0, actionGroup);
1 w+ a. u% l" s$ C$ Q                        schedule.at$createAction(1, actionGroup);
' t/ @2 |2 E5 W- L# p                        schedule.at$createAction(2, actionGroup);
; o2 L0 a& O; G! K3 c
2 q1 \+ R7 z  a  G7 X- X                } catch (Exception e) {
* r/ f  G9 |1 ]0 w* j                        e.printStackTrace(System.err);
1 j, Z- j/ M. d/ h' i/ E3 [( [                        //System.out.println(e);; ^/ r: q& e2 L0 C/ ]# w- g# ?
                        System.exit(1);% a2 Y, M1 s" }+ x. u
                }
" F$ {1 z6 f: [3 u2 K6 T" @3 @  f
. S/ U0 n( M4 ^% u/ G& e; t: B2 C
* |/ W' v$ q  v* y; ~8 Y( Z        }
; F5 w& a8 C, P: I0 B# G: r0 S' j: B1 b
        private void swarmSetp() {
2 g4 T; i, W  C8 j1 a                list.addLast(new Agent(Id));
) x( k8 F% r9 i* V; C. p                Id++;0 K+ d* N* i1 z" ~! c" E
        }8 J8 S0 K9 j& A, H: m0 i) @

& @- h, j1 O; v( k- V        public Activity activateIn(Swarm context) {
. r+ z' f2 P5 |9 ^                super.activateIn(context);7 ^, E+ M1 n7 J0 @1 c8 s0 Y. ~
                schedule.activateIn(this);# m, E% C9 ?$ E0 |
                return getActivity();
% x+ C# ]* f8 s6 y5 {+ q" k        }
0 z( ^" c& {: z' c4 _: ~+ e: e& K2 u& \' ^* a/ G
        public static void main(String[] args) {4 e4 A1 `& r( H" l
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);0 ~3 R2 w" K% b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" v9 a# Y3 b& ~9 E! z" ^                swarms.buildObjects();  ?+ c5 u$ W, p" u7 L9 `
                swarms.buildActions();
1 e) f; p7 e# ?, Z: Q3 F                swarms.activateIn(null).run();
' p! L( j1 r8 ^- E- Q, t8 U        }; o- Z# b9 G" ^* c2 o2 J

/ X+ \7 Y% Y# |# m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-18 07:51 , Processed in 0.017751 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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