设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11638|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 l8 u6 m$ V7 P. c3 `  Y! p3 x( {; X" Q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. g) Z( H5 x- I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." }/ P7 p( E( r9 U: P) b
swarm.SignatureNotFoundException) ~  K) H+ \& ]7 ^) e* b
        at swarm.Selector.<init>(Selector.java:76)5 _0 `8 C% W/ R* d- W, Q
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37); s6 r7 @* C+ U2 M3 f; z1 [
        at ActionGroupDemo.main(ActionGroupDemo.java:67)* M: P# k8 {: c" A
! d. \) Z6 f8 P- c

6 F" U  c3 [/ d# pimport swarm.objectbase.SwarmImpl;
$ E+ q* |/ Z* m8 A4 yimport swarm.objectbase.Swarm;0 n$ [* u6 i2 J
import swarm.activity.ScheduleImpl;
) i7 `9 L4 J3 @0 z* }% Aimport swarm.activity.Activity;
3 a' H  X# b) }' s% eimport swarm.activity.ActionGroupImpl;- T& ~6 X' G8 z, M+ G* {& \
import swarm.collections.ListImpl;  N/ R1 E$ V7 N' q. _
import swarm.defobj.Zone;
4 n3 K  [+ p* t* Eimport swarm.Globals;
6 M9 |1 Y" T9 g& H4 aimport swarm.Selector;" [. r4 }6 g$ m
import swarm.activity.ActionGroup; $ h: ~" _2 C3 L
class Agent {9 A( Q8 f1 w3 H! F1 x$ _1 B: C
        char id;4 o' g/ z" e! |2 C- ]/ s- r
1 h# a1 V$ s6 f- b/ c
        Agent(char id) {
9 P3 }# ?% R; p0 q* B4 c$ z8 j' \                this.id = id;; v8 [3 G% ?/ }& j
        }* I, C0 Z" f7 h2 e

1 |+ C. Q. |1 N        public void agentStep() {" c/ Y$ G+ J* d. b7 M& V' R
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 ~/ d! q1 D5 D- d: ]5 \6 u# L        }5 c% x7 n! I3 \: C2 ^) P6 G
}+ M" E, d6 P) B

4 h& P: y/ L. g" K2 A* E0 B2 ]public class ActionGroupDemo extends SwarmImpl {
( u( _/ U3 K. {* z, r9 T$ Y        ScheduleImpl schedule;
7 |$ G+ e9 K6 C: P        ActionGroupImpl actionGroup;
0 E5 w4 K; ]) U- g- `( t" I4 m$ H        ListImpl list;; `! t4 u/ r# L2 s# A8 \
        char Id = 'a';
& k8 f0 q# j/ _$ K; L& f* _8 p; }4 t
. `# {$ b+ B) b7 R        ActionGroupDemo(Zone aZone) {& i# I4 Q* e; S! Q* s
                super(aZone);
. R% _3 J" d) Q  @! q5 v                list = new ListImpl(aZone);
3 a: l, V! ?- h4 L                swarmSetp();
3 X) I, A5 D- R) N% s' b$ q; x+ s  X                actionGroup = new ActionGroupImpl(aZone);
1 ?6 @/ _! Y2 x" q                schedule = new ScheduleImpl(aZone);+ P  K0 d! o* Y0 Q: m* ?1 r0 g
                try {
. n) ?; ]: a, T+ ~                        Selector agentSel = new Selector(Agent.class, "agentStep", false);2 ?4 v2 @" l6 B0 a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. [( z: R' D% t' ?* B
                        " Z# S# G; J( v
                        actionGroup.createActionForEach$message(list, agentSel);; M+ p* F  [  x7 ]
                        actionGroup.createActionTo$message(this, swarmSel);% U- |# ~: ?& Y: I( }% w
                        schedule.at$createAction(0, actionGroup);
5 b6 N% J. q# {0 _& J$ y                        schedule.at$createAction(1, actionGroup);1 ^& A8 F9 B7 ]
                        schedule.at$createAction(2, actionGroup);" V" r% U: X" ^
) E2 z+ H0 v$ i" }/ Y
                } catch (Exception e) {
5 E! Z4 }6 d) J1 D                        e.printStackTrace(System.err);# n1 M* J; X) h$ [
                        //System.out.println(e);
2 C3 K2 {: _2 [4 [- {0 C' l                        System.exit(1);/ v# v8 J7 A( H$ M* i& H3 {
                }2 S8 l* H& P7 v* A" C$ f0 m. J( t

/ B- O% a* |# a1 P* H7 B3 {
  t+ h: n+ A. Z/ }& J1 }4 n        }
* Z. R( }+ ]+ N$ j; o  }, E) j- Z3 U. s$ j. H8 S% m
        private void swarmSetp() {4 d+ e  j9 \% ]/ B7 s# L
                list.addLast(new Agent(Id));7 A: ]) N+ k, w) H
                Id++;% V; Q+ q2 v: Q7 P8 F. s7 U: x
        }
# ^3 q% F) ^" o$ L, C, g6 a
& b7 m' c1 y) i. w4 i5 _; O        public Activity activateIn(Swarm context) {
, [% {- ]  v4 e+ ^: O8 x  ?                super.activateIn(context);: K+ y" |7 ], M* e( e
                schedule.activateIn(this);
6 e, R# U# y* t; D9 I: g) s                return getActivity();' h1 G" q" }9 @5 m$ p% g/ e
        }
! z, F5 G6 q0 \
1 W) x# M# y1 g+ d        public static void main(String[] args) {
0 U5 f0 \  n( `7 v  {                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" E% ^3 K2 I& l) [( R2 A
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: q0 M4 X; |  D+ E! d1 \+ F                swarms.buildObjects();
3 E! x5 T( l/ f7 }# X                swarms.buildActions();9 @2 |7 g; |2 x4 l
                swarms.activateIn(null).run();
4 \' s2 p' b% f4 {        }
- y5 z& O# B# i1 }8 k
0 z& s' O3 M3 {& U+ ~  F+ D}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 22:22 , Processed in 0.019656 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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