设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12353|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  H' J7 m, W+ d1 Z9 [( d7 Y9 _, Z# q" d8 k) E, P+ ^$ B9 ^
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. j4 E, [- B9 t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: a0 ~: R% q! v) s8 S, Rswarm.SignatureNotFoundException
; w/ {8 o# [& |        at swarm.Selector.<init>(Selector.java:76)2 w# v$ n# ]8 l2 y, Y) c
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
) d4 R& Y, w0 F- V% s        at ActionGroupDemo.main(ActionGroupDemo.java:67)
+ p, r& `& l& m# n6 K. t5 S) R& s
: o$ Z. Y% y! T- m& D3 S5 w
import swarm.objectbase.SwarmImpl;
/ R! w" @9 p  Z" O: i$ x% Y% l, Fimport swarm.objectbase.Swarm;
$ H1 b. w: e7 U9 I% l5 eimport swarm.activity.ScheduleImpl;0 c% p" q6 R% [/ |  q
import swarm.activity.Activity;/ Z7 {% W! C2 E# K* _+ L- j* Z
import swarm.activity.ActionGroupImpl;) z+ ^9 N" Z& p" d2 {0 O
import swarm.collections.ListImpl;
. F& C! V: x! c$ Q1 M$ q' Z& Pimport swarm.defobj.Zone;
% e' R4 f  M% a& Cimport swarm.Globals;* U' d& g$ R/ h  e, T5 R! T5 Z
import swarm.Selector;/ |1 d. L8 l6 b: s+ g) }) Y
import swarm.activity.ActionGroup;
4 {+ G/ G+ z2 j6 pclass Agent {2 b; h# R# q; s- ^
        char id;! {) c' w  v- X+ l- F, a* t( W3 M9 g3 z
" Y* V" n4 C' a3 N/ y
        Agent(char id) {
; l  _5 w# S/ o" ]) W                this.id = id;+ H7 G% k' v, E. f- U/ H, `
        }
& x+ @8 }( g" M+ }1 @
- W  j5 S/ s6 X        public void agentStep() {9 S6 e$ d/ M7 ]; H2 r6 `
                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 r" q' @, |# W- `! |        }* ~- }3 n3 g/ g" p2 p
}6 L0 A; V$ E# d* W) L( A9 ~

* Z0 {, L) K) g4 p3 d( @5 }public class ActionGroupDemo extends SwarmImpl {
) b! `1 m* K; g        ScheduleImpl schedule;1 R9 u% I$ Z' A6 X: R; m. p
        ActionGroupImpl actionGroup;4 Q$ M$ M) D# F" b4 e
        ListImpl list;" ?- u9 `& {# u' q. t
        char Id = 'a';
- l, F0 T$ R; b" m
8 p5 k- O3 S) x        ActionGroupDemo(Zone aZone) {
( E0 _0 q' m6 r9 }/ t! |1 P                super(aZone);, A# ?6 s* S$ U' D
                list = new ListImpl(aZone);) J% H) |, N( @6 u2 G: W' l
                swarmSetp();( G4 X) _0 ^1 P- S, ?! W% U+ y
                actionGroup = new ActionGroupImpl(aZone);
! T2 a5 @0 p9 ]9 V# s" T                schedule = new ScheduleImpl(aZone);
# l/ A  A+ T! L' D& |6 h                try {" j. w4 m+ |, d6 `0 g, m
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ k2 o8 q9 y# W# T+ b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! X8 ?7 b' E5 G$ T/ i% R( V                        
8 q$ n9 f$ D% g9 T) E3 t                        actionGroup.createActionForEach$message(list, agentSel);
1 t: j# W* g% C5 u) z                        actionGroup.createActionTo$message(this, swarmSel);
6 j: l1 U6 A+ L8 j                        schedule.at$createAction(0, actionGroup);
) A+ ]9 x; u( b. p                        schedule.at$createAction(1, actionGroup);8 f5 O# [3 |, q) I
                        schedule.at$createAction(2, actionGroup);* l( j3 R1 z3 X* F7 p
: I% B2 U1 U7 T0 b
                } catch (Exception e) {
# i6 ^' c: t9 T3 ~4 G& Y& D- d( W                        e.printStackTrace(System.err);
3 C/ [1 v! z9 Q) r6 ]/ d7 d                        //System.out.println(e);, ?6 z! \! R# y6 y, G2 h
                        System.exit(1);
( G# {6 Q+ A4 i- Q7 T2 {                }1 p; |- A+ R$ h, t
# H2 Z; G1 U+ C4 E2 X+ ~) H! i+ i

* f% T# t* P+ J9 U) x: O6 B/ y        }
8 W2 O7 Y. F, F. l5 b6 J5 d$ {/ x; D
        private void swarmSetp() {# r% S2 _! E2 z8 i" U
                list.addLast(new Agent(Id));
0 D" Y) o, p! V' L+ o; a                Id++;
( w% Q9 [) w% _        }
5 o+ X/ M; }6 \2 w
4 X) x$ T0 a7 I( i/ r; G: ~        public Activity activateIn(Swarm context) {3 X1 W+ ~; u! R, O3 |2 n
                super.activateIn(context);! r: O5 _! b6 J) j6 d
                schedule.activateIn(this);
+ c7 J0 Q' e- g                return getActivity();
* P+ v6 y% ?8 ]+ c/ B        }; \" l+ ]! {2 @* q% x2 d3 }7 X
7 q3 K0 Q6 Q6 u) T7 Y3 o" L5 t
        public static void main(String[] args) {
0 m) `5 S' E5 M% |+ ?# N) H: v                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% D' _( M/ v0 ]" ^* w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 ?; y6 A) b- E                swarms.buildObjects();
: w0 H+ r2 _7 g- ~                swarms.buildActions();7 W6 V& U. S& T  v7 R9 p
                swarms.activateIn(null).run();* P1 y) A2 y, D9 _8 m* {7 O8 u
        }
% q2 k( l3 b' ^; R/ Y6 g7 I' [( ?, ]2 t: y/ \. Y( j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-6 08:16 , Processed in 0.016407 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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