设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6625|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# L3 \% W7 A. |9 H$ e8 m, X+ K- U+ H, c- j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: b, I$ q! O$ ?& O" K, Q5 `" t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: x: o2 `, `( U. ~! y. y0 r
swarm.SignatureNotFoundException- C: n, v& D" D
        at swarm.Selector.<init>(Selector.java:76)
+ k5 z, |& u8 m& P' {0 e) w        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 R2 Y9 r9 \8 i        at ActionGroupDemo.main(ActionGroupDemo.java:67)
1 u9 ^* }8 ~% c$ g: q) f- S" t
, q( N/ c1 |: _2 u( i7 D& @, i5 a5 ]$ [. _) W2 S) n
import swarm.objectbase.SwarmImpl;
) |$ i& K" p5 [2 e! mimport swarm.objectbase.Swarm;
. R. @5 }) G% l; m$ Yimport swarm.activity.ScheduleImpl;
* ~7 p! I( |& {, q7 }import swarm.activity.Activity;, a# ~6 Y' N. O" r, q) Y
import swarm.activity.ActionGroupImpl;8 w: U- l3 [6 C" M: C
import swarm.collections.ListImpl;8 d, k( p0 G, @1 C% q; g& V
import swarm.defobj.Zone; 2 C) s4 a  J$ `' f" O/ p
import swarm.Globals;2 m/ X" q5 I+ A, W/ L
import swarm.Selector;+ h3 E$ O; c4 g  p+ K
import swarm.activity.ActionGroup;
4 M* o+ ^$ g- T+ w, o" \6 x/ Rclass Agent {9 {5 R8 c0 l. V- }
        char id;0 f5 I1 z. o7 \, @
# D8 V6 q) k4 M2 [5 t% q. V4 ^. h
        Agent(char id) {7 s' o3 w! q; }& Z; C- Q7 P4 Q5 u4 D' N
                this.id = id;
" F6 Z' M) A- r  T2 H        }, ]! u9 j$ C/ y4 A/ g' l

' H2 J* g1 d* `) o0 P0 L        public void agentStep() {
; z/ p; j5 j: d- t# h( w$ i                System.out.println(id + ":" + Globals.env.getCurrentTime());2 s  a  _; n" S2 q
        }
  h; w! `; \& s% c5 u}
$ i/ j4 b9 G; l' {3 Y  x$ w0 R. G3 F# ?' x/ \. \4 {% b
public class ActionGroupDemo extends SwarmImpl {+ v9 A; y) T% S) _* s
        ScheduleImpl schedule;# U4 }5 ~9 c- S6 I
        ActionGroupImpl actionGroup;. G' k- W5 n) @( M- F
        ListImpl list;: a3 S, l; c3 I" @7 q/ t! t
        char Id = 'a';" ]5 b* Y0 e. O$ p

: G4 F. B  y$ s+ t        ActionGroupDemo(Zone aZone) {/ A7 g' j: u. f# U# c4 W
                super(aZone);3 ^9 ^5 ^% X+ T; D% e$ b6 B8 w0 z
                list = new ListImpl(aZone);
$ i$ F9 e  N0 y                swarmSetp();
: g  J0 j- |% x# e4 ?                actionGroup = new ActionGroupImpl(aZone);
$ O& Z" X, p1 m& Q3 I* O                schedule = new ScheduleImpl(aZone);
- G7 `2 I5 f3 D8 _                try {
9 [8 c8 s7 f2 L3 A; x                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 o* T' A4 F3 y% m) |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& _) E4 b- _: P  j! O8 U
                        
. D; t) d5 n0 {, m0 w: D                        actionGroup.createActionForEach$message(list, agentSel);* f3 |- c' I3 W7 x
                        actionGroup.createActionTo$message(this, swarmSel);
( z# [; u7 r# t: E  x3 [                        schedule.at$createAction(0, actionGroup);/ [( {1 l* O+ N3 Z7 E8 \- R
                        schedule.at$createAction(1, actionGroup);
9 R" N. Q7 E! O8 Z: X0 @" G2 h( l                        schedule.at$createAction(2, actionGroup);6 H& O; G. g& s2 ]' l' b
. r% u6 T, l, e' ?9 e* Z6 @. v
                } catch (Exception e) {6 a: ^% v  x/ K+ V8 O5 ^4 R
                        e.printStackTrace(System.err);1 ?2 M- P. j* @7 R
                        //System.out.println(e);% [1 c9 E" |* X1 J) B
                        System.exit(1);
( w, X2 ?* c' Z# n4 W                }3 h  u" W% u  H2 @' {6 Q4 P

/ c3 S1 q" O  n1 ]$ b- p% |5 @6 O8 y
        }
6 }8 x; k# n" B, M$ R& m
+ A0 _' j/ S, {' i        private void swarmSetp() {/ W0 }4 A3 n3 O# d
                list.addLast(new Agent(Id));
/ j( u. Z& r- s" K( S7 x                Id++;
, D" g4 {1 x# k6 i% _! Z) h5 X3 E        }
9 M: ~4 S! f; s" ~5 m$ L3 g" C8 r8 B4 ]
        public Activity activateIn(Swarm context) {0 _- T) l4 ^% M
                super.activateIn(context);5 ]6 q5 m) z7 i% ?2 ]
                schedule.activateIn(this);' m# Z+ g1 N$ ^$ |& R  N
                return getActivity();0 y$ W# Y2 Q% }5 ?. o' l) F
        }
. K1 {9 l: p$ s+ m* A  q, ?! Y( R4 H% f/ K( W+ F, K& \8 o% a
        public static void main(String[] args) {8 t0 D* I+ T6 u. b1 Q6 Q, G/ s+ N1 {
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
) M; c. f5 G/ `( C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, R3 o# H4 O7 i                swarms.buildObjects();7 r3 k# V4 x' z& Q2 k- @
                swarms.buildActions();2 E1 i' k) T9 x. v6 H. N
                swarms.activateIn(null).run();
) K5 o9 z6 c) K        }* C9 E- K  a6 k. s1 v6 o# F8 u0 T
- ^- r" @7 x# M" @1 l: F
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-3 14:31 , Processed in 0.013208 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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