设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10585|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% y. `! I9 a9 }7 V) b8 a
( a7 G" c3 ~! d, x- @/ p1 }0 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ V8 ^$ p: Y. m( I) D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 k$ d2 t. Q7 h4 {
swarm.SignatureNotFoundException3 {1 w! \* ^1 W$ p- ?. P. l
        at swarm.Selector.<init>(Selector.java:76)
% Q, O0 i& e/ X2 C3 ]        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# d* W; v+ B* }7 w# Z" F# M        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ Y. e3 e. R$ b4 j+ l( w# l  B

3 i: |+ ^/ f$ I) Z6 p! L4 J, m  k- L* H4 S
import swarm.objectbase.SwarmImpl;
9 ]( f. c2 R; h9 p+ o# uimport swarm.objectbase.Swarm;: s" X6 e3 H2 M, U
import swarm.activity.ScheduleImpl;
: W; P4 [! X9 Z. A6 g2 nimport swarm.activity.Activity;
$ d+ v( Z. [3 {% z0 x4 I* ?import swarm.activity.ActionGroupImpl;
# r7 Z# `9 [/ T" ?% Kimport swarm.collections.ListImpl;2 `* @5 i. s# S3 j) ^
import swarm.defobj.Zone; * y1 l8 K0 m7 y1 g7 y
import swarm.Globals;
, X- e7 M1 I$ K# g  K% H  n4 Mimport swarm.Selector;2 d6 P( h$ ]; f3 R$ s4 U3 p
import swarm.activity.ActionGroup;
: ]: }7 P( q/ ?* d' x( lclass Agent {
4 `9 H5 {8 W# W9 D9 I        char id;4 s9 M6 J; H3 P' S, G1 o

- V  p1 x& _  `0 c2 z        Agent(char id) {. Z# U, f) C) v9 a: ^7 s% B
                this.id = id;
/ y/ k. F! Y2 t& ^        }
6 k" @- h$ o) z; o
- t) z  B3 t/ Z* I; A& v        public void agentStep() {) @7 R: l( e$ ]1 K4 N  w
                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 e6 z2 A; [0 d7 D        }" ^# q4 S, p* I; u) U1 w7 {2 a
}
6 A4 b8 m, y3 g9 p+ k( _0 M" Y* \
public class ActionGroupDemo extends SwarmImpl {! X* s- x. v) \: z
        ScheduleImpl schedule;7 Z; m8 q: ^9 n$ R: N- i
        ActionGroupImpl actionGroup;
' _1 K% l7 R% ~: L8 D, ]        ListImpl list;
" U* T! |- g0 X3 Q/ i* h, g9 P; M        char Id = 'a';4 a7 Q" h6 n1 n3 ?. C
0 v4 z+ b% B: l3 M4 s: ]: L
        ActionGroupDemo(Zone aZone) {% _2 C$ i9 W. r3 \5 U2 C
                super(aZone);
2 l# t+ Y* w$ x0 K' ^9 A8 N7 m                list = new ListImpl(aZone);3 N/ o" Q7 X; ^1 k' e8 y! I" n, ^  r
                swarmSetp();. S0 E9 z9 s5 l  i% K1 T" f% ]' O
                actionGroup = new ActionGroupImpl(aZone);
- K5 K3 I$ x1 T                schedule = new ScheduleImpl(aZone);
# K+ J% F, }- t2 @                try {
/ R1 t2 N) E/ \' W9 T0 C                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ U3 ?0 v9 H* y+ B                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; D0 f0 ]/ F. T; t0 L+ A                        
) O( L8 P! i; _8 s                        actionGroup.createActionForEach$message(list, agentSel);# G7 t: ?: A  i/ G8 d- `7 ?
                        actionGroup.createActionTo$message(this, swarmSel);6 t2 j; r1 q1 }3 D! T$ p5 ^4 `
                        schedule.at$createAction(0, actionGroup);
( B0 {9 O' `. n9 ?# |; [$ n+ [                        schedule.at$createAction(1, actionGroup);
0 N' U+ W3 u% b9 N                        schedule.at$createAction(2, actionGroup);
  n# Q9 n' g1 C4 ~2 @9 }% ?* h+ Q) c0 m: @3 e
                } catch (Exception e) {/ y( o1 I0 z  @6 k6 b3 ^# L# E! ~
                        e.printStackTrace(System.err);
/ b0 M0 S5 T  s& I" c4 L1 x/ G# F                        //System.out.println(e);% j( y! l  f5 q% o! q
                        System.exit(1);/ K' {9 T3 X/ K1 n3 f4 z  n
                }! n6 I2 D3 V8 m9 W+ Q9 L

5 a7 g+ C2 b, a7 {( b  `3 N
9 g  f# F* D) t6 @        }
9 }: A+ M0 a8 H( s
+ _# b: B$ w6 O3 A. w- {! b        private void swarmSetp() {% S; j, M( v+ S
                list.addLast(new Agent(Id));1 N' x( l3 f+ _. z
                Id++;. Z/ M, g7 e2 ]' r
        }
$ D# E! ~" `; M! B* N7 Y8 a+ d2 J# n
" L2 C; k9 M0 R# y9 N        public Activity activateIn(Swarm context) {' w2 l2 f' k' R2 B, _+ n; z
                super.activateIn(context);
5 b- A. h  z" G, X  }0 e7 @                schedule.activateIn(this);
" f9 @1 {9 i% V5 c. O                return getActivity();; q. V; l9 i$ E$ Z) a% m: r
        }& t- m+ _9 b: z/ I$ |" n: j

1 K3 [4 R( f5 Y2 O4 I1 B        public static void main(String[] args) {
- L9 w! P8 o: [0 X! i2 y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! z8 {8 [! P, u2 b) t5 {                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! U% Y4 P* `* ^
                swarms.buildObjects();$ n/ x- }5 k1 t9 L2 b
                swarms.buildActions();
: J4 Z) R4 b4 Y' M& Y. H/ x8 ^                swarms.activateIn(null).run();' B; W' G, j& X. N+ m" O
        }4 J2 v" M; _/ r. k( E

/ f5 Y7 A5 {6 }: I2 o5 y% I$ }/ m0 W7 |}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-17 19:41 , Processed in 0.015681 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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