设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5686|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / m3 g, K( j# _4 V/ ^1 G& X
  b- z( o; x+ Q6 K% {. H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
+ |6 H1 f7 X  s1 P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ ]  h: G( C. D4 L6 p
swarm.SignatureNotFoundException; D9 D7 W/ }' {8 }0 I
        at swarm.Selector.<init>(Selector.java:76)' _+ ^# n6 d5 E& O' f5 b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 e" Y' G1 ~3 F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)% D+ W1 R% }" ?

; c- z! v6 o5 n) @9 X  v  z) n* I1 I/ C& j0 P: s2 L% m
import swarm.objectbase.SwarmImpl;; e6 F$ A2 @2 F& O, b& S
import swarm.objectbase.Swarm;
# c& L- S- K& \* oimport swarm.activity.ScheduleImpl;6 @7 p. b7 l% ]4 P5 E3 _8 W
import swarm.activity.Activity;
# N2 w5 T; p8 \) j- `import swarm.activity.ActionGroupImpl;# a( W. B6 C3 s: ^6 q7 H; [6 u
import swarm.collections.ListImpl;$ |& S3 W) J! g7 ?2 [" S# n' Q
import swarm.defobj.Zone; 8 Q4 j4 u+ h6 p8 F
import swarm.Globals;
9 ~* B2 C# d9 D. C9 @- o* \import swarm.Selector;
5 R: p. M& v! e+ Q6 [. h( P5 ^! x- uimport swarm.activity.ActionGroup;
6 P3 @6 @7 ?& D  [5 f5 T  w2 cclass Agent {. i6 P4 B! Y7 e3 i: ~% n0 |" L
        char id;. P- I* I! O/ V
/ D9 F: @% X6 }. N. l
        Agent(char id) {% n3 F* _+ C0 r* h. x" e
                this.id = id;
/ J. R1 \+ i4 U2 I  k7 y9 C        }$ F& d' ?) Q  C- l! e

' O1 [" @3 c  d1 D        public void agentStep() {/ ^5 J3 @. I- o( q! y3 D* Q- _6 V
                System.out.println(id + ":" + Globals.env.getCurrentTime());
, h; h) N) F& G$ o1 R) ?* ]5 {! N        }' ^( K) Y4 v) W5 @( I) v  g7 }
}1 K6 W5 h- a, O7 \8 D4 x% S

2 ]; _( _, a: F# K9 c$ {: tpublic class ActionGroupDemo extends SwarmImpl {
. b2 \, l# W$ t& {        ScheduleImpl schedule;
2 Z4 z5 e0 f+ t. @! i) ~' U# l        ActionGroupImpl actionGroup;
- C9 e2 P7 u0 R0 _, w        ListImpl list;
3 X+ v/ n+ V. q        char Id = 'a';5 U$ V9 f( ^$ O8 R- k

0 m) X# N$ ]- ^! o        ActionGroupDemo(Zone aZone) {: T7 y0 @4 u+ I, j% F4 f( s4 r' K$ n
                super(aZone);: s2 q9 C, j. o% C6 T+ t& h! \5 a
                list = new ListImpl(aZone);  l3 H: b5 |( t0 B, b! \3 o
                swarmSetp();
; `5 f: V: k0 f2 y                actionGroup = new ActionGroupImpl(aZone);
4 \; ]/ e  H6 v" w5 x5 d( ^                schedule = new ScheduleImpl(aZone);! U! `. B1 w/ O3 v/ `. g" Z, Z
                try {
0 W3 p4 X$ W8 S6 ^# t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 v  T; f: d2 `4 k) c+ w' k
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! `5 H3 ~0 T$ ^# F
                        
0 n0 U+ Q9 A. v4 `- ]                        actionGroup.createActionForEach$message(list, agentSel);
' I: t/ ?- b9 k% G- [& V                        actionGroup.createActionTo$message(this, swarmSel);: ^7 `, r% r" L' |8 G
                        schedule.at$createAction(0, actionGroup);
( }; o! H7 U5 M* f& q                        schedule.at$createAction(1, actionGroup);
9 i+ s: g& j1 ]0 ]7 j  A# [: B3 f: p                        schedule.at$createAction(2, actionGroup);& f* ]& W6 c. ?0 J
( h: y) U! t4 _6 E; ~( ]
                } catch (Exception e) {5 O- O: ~; x6 K! V% F, r, t
                        e.printStackTrace(System.err);
8 a$ k5 Z' o8 `/ @                        //System.out.println(e);; h3 T9 a  W$ R% z' Z
                        System.exit(1);
8 X, f  [% G3 Z7 r& Q0 h% D0 W$ V                }
, D' m, e9 v8 B9 o' g( E& g) C$ W. O' t
& }' V7 S! F' v3 N( U
        }1 y" \$ ]# F( K7 w: R
- T0 x( |. f) T! E, H- K) g
        private void swarmSetp() {0 r$ N; I7 i. o4 N, U
                list.addLast(new Agent(Id));
" A, N  q. Q9 X; w                Id++;
  M5 l1 ^) ^) c+ ?/ _! D! i; _/ m        }8 S  Q/ I, u- A& j: c6 u
0 \3 e( i7 `7 I' }* t4 E* g, F+ l7 G
        public Activity activateIn(Swarm context) {
1 X) {+ ]2 @3 b                super.activateIn(context);  c* q7 V" E0 L1 _/ x* R  }
                schedule.activateIn(this);* e; I3 h! U9 x, I" `* T' [
                return getActivity();
$ J) y) c! z; Z: o# Q+ S        }9 y4 }& G- C, {5 g

0 a2 m6 t4 Z$ ?4 Z! d3 X        public static void main(String[] args) {
/ {7 j& c  d5 e  Y/ E5 ]/ |3 }4 Y& M1 y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 M, H  W8 h$ W7 U
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 o$ _& o6 J2 P* \
                swarms.buildObjects();
, [% e% q% q& F1 k                swarms.buildActions();+ F+ Y& g' M$ b% m: y) |
                swarms.activateIn(null).run();
6 h" @2 i/ a  L. n/ M; ?! i. v        }+ P9 B8 K( U( a6 N7 ~2 ~6 u  {

4 B5 S* u+ p' ~! b}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-18 15:38 , Processed in 0.014574 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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