设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5550|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# O1 D0 l7 O7 l/ o4 @( [( }$ `, h) g' e- S4 f! z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) L" Q+ ?/ d! S. r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
+ c; m' B. F1 N3 N# ?! f( p6 `swarm.SignatureNotFoundException
9 _! J/ Z+ ^* @& n. `0 h- W        at swarm.Selector.<init>(Selector.java:76)6 w" @1 Y( O/ y6 {4 q2 d
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: i' v8 U. w( W) G. x$ A1 G        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ S- m, F2 m3 F7 s. T

4 [1 l: J3 s+ {/ k5 _! T0 o
# O, Z- i7 y- D; g+ \- `import swarm.objectbase.SwarmImpl;
6 j8 [# s& j; Nimport swarm.objectbase.Swarm;  E6 t& q. o4 e. D
import swarm.activity.ScheduleImpl;$ f! N: A9 g: X/ B; S. h: D( \
import swarm.activity.Activity;& |  f) T( |; `# r, D; Q2 s3 R/ v
import swarm.activity.ActionGroupImpl;
7 N, w! z9 h1 c! u  Z3 n1 _6 uimport swarm.collections.ListImpl;
3 d, m; l- e7 X2 z% L- ^import swarm.defobj.Zone;
6 R- R+ H. Y6 n. x2 H7 E6 ?! _9 Iimport swarm.Globals;
1 o+ i# s* g' `: L9 w4 Vimport swarm.Selector;
) @) b% l( j2 a, H2 `9 vimport swarm.activity.ActionGroup; ) w. p1 p! Q+ k/ D
class Agent {
0 `1 g. n. R" l        char id;- Z4 }$ }- ]# F/ W( ?- g

; |9 Y, U9 r. T5 y        Agent(char id) {+ J. r5 n2 @8 V% H
                this.id = id;
& z: Z! b- Z5 k8 a; W. M: C        }& n8 g2 ~8 q, \; t) v
6 w7 G4 J0 C0 G; R/ o4 c; t8 E
        public void agentStep() {/ h2 t6 |$ C5 h- K: Y- y8 o7 ?# G" `
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 Z5 t/ c. `" S/ X4 \+ g
        }
5 v7 P, p. T+ `4 K/ `5 q; w3 h}0 Y' C  k8 _: s& ]- J7 I2 y+ i

9 T7 C8 _0 m$ m  Spublic class ActionGroupDemo extends SwarmImpl {
1 p1 u2 u+ s( n& X8 c        ScheduleImpl schedule;
' G. F$ N! a/ F- R1 J* e        ActionGroupImpl actionGroup;
+ ]' ?. `( \+ J& s        ListImpl list;. w+ b8 j% E' O3 @- o. H" T# @
        char Id = 'a';
" k: L1 F9 }! o+ {% A5 p. T( c6 n+ I" k) q) t
        ActionGroupDemo(Zone aZone) {
. ~( w3 j/ d) }0 \" _                super(aZone);
6 d+ l; S' J2 O" U5 F  X; |                list = new ListImpl(aZone);
- W; a  L7 m8 [  c                swarmSetp();
! O5 \) y3 m  ]  q6 ^3 h5 ~  X' @6 a                actionGroup = new ActionGroupImpl(aZone);
  Q* M# z# `4 G& R                schedule = new ScheduleImpl(aZone);
% l8 k7 @  ^. W. X  Z8 y- ~. \                try {
0 C5 U9 ]# S/ ~) P                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; G$ R0 G6 q" u4 l0 V  N5 r( c2 K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行1 [- u1 c5 `$ t! ^% i. v
                        , R) M4 Z" E# x
                        actionGroup.createActionForEach$message(list, agentSel);
8 Q7 k0 U! g% A                        actionGroup.createActionTo$message(this, swarmSel);% K2 Q- R6 D& R0 x' m" ]% ^
                        schedule.at$createAction(0, actionGroup);
* u* Q, l* o' a                        schedule.at$createAction(1, actionGroup);( i2 q! V# [1 t. M& Q9 y6 I5 |; T
                        schedule.at$createAction(2, actionGroup);
: u' A$ j" W- p6 Z" k* \' T: o  L0 m7 Y
                } catch (Exception e) {
4 l2 U& l8 y# x# S8 A' m- G                        e.printStackTrace(System.err);
9 r' a5 j( c1 O; C# |/ f                        //System.out.println(e);8 Q$ `: Q" x- Q' X
                        System.exit(1);
# j5 j' C# Q) I( v                }
* K* V! c" g3 j! n! \" Y1 V9 h5 L
$ C, \& L) T2 G# M3 E# Q9 W7 L  o" h5 O( _- ?8 \
        }
9 ~* h# y5 H7 _) x* F! R
7 h9 `2 m6 @! S! m8 ?        private void swarmSetp() {
0 A2 Z) E- o$ Z, @                list.addLast(new Agent(Id));' Z# Z: H: `' {
                Id++;( Z3 @/ j& `. o' L! S7 p
        }5 |' J! _" C$ n0 v' [! [0 ?
& J5 k- g0 U6 ?: s# g& S! c
        public Activity activateIn(Swarm context) {
5 t5 X- |% s' @! t* y% I                super.activateIn(context);
- B- U  _/ |% n                schedule.activateIn(this);
8 c$ Q+ R. s( C# W+ a                return getActivity();/ P+ y& r0 ]% Z5 s* t* n
        }
0 `( B# a; P& g4 B' N  v( ?: ?( I+ s/ u, _- R+ v' T6 ~% ^$ a
        public static void main(String[] args) {2 P# k7 E+ t' B! B( u
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ B0 x" i* Q8 \, h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 y& T% @+ N' i; t4 ~" P                swarms.buildObjects();( d$ H" n, V  x# {8 ~. H7 Y3 m
                swarms.buildActions();: s, |  |7 j& ^% v
                swarms.activateIn(null).run();7 ^' Y. G* w$ e% p8 U# M- S
        }
$ p* c- f' p. M' _, s5 C, C4 e/ F. e; A/ S6 g, ], v5 c
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-12 17:44 , Processed in 0.016382 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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