设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8585|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 R( B: ?7 w( [- g
& k/ T/ U% s# U" Y1 z' z5 ?( N
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! K* y2 \/ z+ |以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
6 t! n  \/ m. V# Zswarm.SignatureNotFoundException& ?, B+ F0 s* M: d
        at swarm.Selector.<init>(Selector.java:76)
# C  P6 `6 q! {        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 ~8 q' r% l& n4 U  p7 y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ d! ^; h/ x3 @0 m
; Z/ ^; N( J+ d" N5 w, U2 `$ x6 \9 u, p5 R9 a8 j" I, Y8 r. l! S  Q5 C& V
import swarm.objectbase.SwarmImpl;, e, `: }* N: g" M8 B8 O
import swarm.objectbase.Swarm;
- w, s' b0 @8 N9 K0 g# `' u) L, kimport swarm.activity.ScheduleImpl;  ~  w5 i4 A" [! D: b* `
import swarm.activity.Activity;4 N: D1 G- W* S6 K
import swarm.activity.ActionGroupImpl;
; K' u- n) K7 kimport swarm.collections.ListImpl;
+ A' |) S* [! \9 e2 j( Wimport swarm.defobj.Zone; 6 T3 y1 o5 C5 R; e! L8 z5 a$ a
import swarm.Globals;
5 f# Y* u) L6 vimport swarm.Selector;- R  \; H& ?" F% \% M* J
import swarm.activity.ActionGroup;
8 H4 i$ T3 L! K$ X6 E6 J& |class Agent {2 W* p- c# m2 `3 Z2 [) ^
        char id;4 I, i2 I1 B& `3 j& g5 F

' b) i* l" \1 y7 Z        Agent(char id) {
" p0 r3 U$ M/ F% k7 E! D                this.id = id;6 L' i1 U1 ~8 j; G
        }( r' N" U" }6 s* a/ Q4 W

$ f3 _0 y2 S/ W' w. Z, p3 v        public void agentStep() {
8 J  O5 p0 t$ O/ a                System.out.println(id + ":" + Globals.env.getCurrentTime());
  J5 o# @2 {( f/ W' g        }/ C: Y2 A7 ^' ]. K
}5 ]! J# {3 @5 G4 j
  N1 N  q1 r+ C( T4 o2 M/ `
public class ActionGroupDemo extends SwarmImpl {+ Q# a3 z5 ~0 b$ V& }1 @1 c
        ScheduleImpl schedule;
+ R/ G  A4 J: v, |7 V' N  J0 m        ActionGroupImpl actionGroup;+ l: t, u! w5 O; [; n( x
        ListImpl list;
1 J7 ?0 M+ r( D. I* N; }) M3 i        char Id = 'a';
! j! N. J0 _' {# _& c) X* Q+ G. a9 u7 E- i
        ActionGroupDemo(Zone aZone) {: E  X* n- g4 }( U7 k* M. C7 K
                super(aZone);
/ e% z! ~/ D! Y                list = new ListImpl(aZone);
. e* v- E5 E! a3 E( P                swarmSetp();
) n; @) h# L2 e. S2 N/ Q4 [                actionGroup = new ActionGroupImpl(aZone);6 ^( Q# C8 A% C0 x; g
                schedule = new ScheduleImpl(aZone);
; I. d3 F; ?0 ~                try {1 H1 B2 B. h$ C0 k5 @. Q
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: y2 Z4 Q; z2 v* `$ W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 u" [. n4 Y) J2 \
                        
: u) {5 V3 x3 z6 o                        actionGroup.createActionForEach$message(list, agentSel);
/ z1 G  F. P4 `) V                        actionGroup.createActionTo$message(this, swarmSel);( C8 @( k& j- v$ U5 w/ z. x
                        schedule.at$createAction(0, actionGroup);
( \! M" S" z6 O% b  e5 k8 q; l                        schedule.at$createAction(1, actionGroup);2 ~9 b# ^, S5 L3 d5 S% p. Z
                        schedule.at$createAction(2, actionGroup);9 y& L2 q, I( i  U: k& C% X) w

& [+ e1 L1 k+ o" r                } catch (Exception e) {
: |, z6 q$ F  u                        e.printStackTrace(System.err);
: a" G! G, n+ T& s; @                        //System.out.println(e);
2 e4 S" F8 y# `# C2 W' @8 r! i7 `                        System.exit(1);; O: T8 k7 m, F# b7 a5 ~! k- w7 R& ^
                }# Z, n$ `  s0 `: n) N

+ _9 G+ \( d- G) j! l8 c% m+ g6 C' ?8 I
        }
" s5 ~2 }7 d: ]4 u# t0 w' M; U8 s( f' D: P# i; p
        private void swarmSetp() {) I% M$ y7 J- }% n+ C& ^
                list.addLast(new Agent(Id));6 L. p. S9 y5 R+ O9 F
                Id++;! W$ D  ]& I. K% U/ G
        }/ C3 Q( a$ R* g* `2 v
( T" @' U* k7 ^  c+ t& h: @
        public Activity activateIn(Swarm context) {
8 h9 d7 G* K3 C0 Y2 Y                super.activateIn(context);  Q9 F0 a* [: U# {
                schedule.activateIn(this);: K5 z3 Q9 j1 k2 w3 B. c
                return getActivity();
8 [/ Q: ?' {9 V; g5 A        }& Y5 ~5 G& T/ \+ H

; t0 J3 o. ?, Q6 a        public static void main(String[] args) {9 e9 q$ Y- P& ]" p4 c) e& y/ O
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ ^3 {7 q; d( u9 _- b                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 v( ~& @9 L7 J9 D9 y- o
                swarms.buildObjects();
5 I4 X0 y- o* i; z                swarms.buildActions();
8 i3 F# F% A1 _$ O8 T                swarms.activateIn(null).run();
6 |1 s* c; F4 J4 i; i% F        }
# A& @; Q; M3 s: ?: \. V3 k7 B2 C( y, w& Y  u+ z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-17 09:31 , Processed in 0.024379 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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