设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9903|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 7 L9 {. n) }% E# d% Y! t9 i4 h
/ L' E% J. r3 k8 X( `' o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21/ D  L3 M# m7 }* i% P
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( b% p% Y$ ]# F- E
swarm.SignatureNotFoundException
& u! m$ V6 C8 _  \3 \9 O        at swarm.Selector.<init>(Selector.java:76)
/ y5 C( {5 C6 s, b' j" ]( N; K9 |        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ ~- h2 E" l' Y- x+ z' A        at ActionGroupDemo.main(ActionGroupDemo.java:67)& p: Z! M; q0 k

4 S; B6 A* t  O+ `/ P; J3 W5 |; J" ~2 L/ G1 D2 X2 m. }0 ]
import swarm.objectbase.SwarmImpl;
5 z) \: D0 ]9 Zimport swarm.objectbase.Swarm;  N- g" z+ l+ c8 K" f
import swarm.activity.ScheduleImpl;$ |$ ~2 _- I- U
import swarm.activity.Activity;! s! J+ X5 M& E
import swarm.activity.ActionGroupImpl;
" d% x2 Z" X- f  yimport swarm.collections.ListImpl;; `. V" g" X) g. [. i% O
import swarm.defobj.Zone;
' [# r& f6 Z1 E% H% E, r+ m9 Pimport swarm.Globals;
9 c1 k! d9 @5 y  r% Kimport swarm.Selector;
8 e5 l$ S0 H2 Z! j# timport swarm.activity.ActionGroup; 0 w5 ^' ^. _/ V1 T4 h: Q) G
class Agent {( @# C' t1 m8 n( l; ?
        char id;, u' y) _) g1 O2 W& l. b

3 W0 S" M6 r  x# u9 f1 N1 u        Agent(char id) {* {( t5 A9 w: V3 P; ^1 ^7 W( k/ @/ ~
                this.id = id;
* p0 {7 E0 [6 D* M1 f2 |5 c        }
0 N. w9 F1 n0 I9 F5 R
+ z/ d& K1 b7 \0 K        public void agentStep() {* H0 N: g! @# F
                System.out.println(id + ":" + Globals.env.getCurrentTime());# J) @* @8 l, \( I" p( ?1 u
        }9 Z: K7 O1 `1 Z( C
}% p9 a/ D# c2 S* h

+ h) S5 [( l% G3 i1 d7 d; _public class ActionGroupDemo extends SwarmImpl {; ?, Y; @; _% f: r
        ScheduleImpl schedule;
/ ~7 b4 A- U; Q2 s        ActionGroupImpl actionGroup;
6 d' w0 b% v  ?, b% v' b) n" M        ListImpl list;
& }( L6 ^1 ^5 F, D. G        char Id = 'a';
, Y5 e! D* _/ U6 B1 K8 ?+ m& i& v8 R% ]( B3 |( f% E& L$ o$ q+ a
        ActionGroupDemo(Zone aZone) {9 U. \2 I% _3 ]5 F. P
                super(aZone);2 e/ Y( ]6 b7 y+ y: v
                list = new ListImpl(aZone);% C, H" k4 F; c$ D' C
                swarmSetp();5 z2 t- _& x. ?7 m+ h9 Z
                actionGroup = new ActionGroupImpl(aZone);7 K7 r# r+ @8 J9 D& i
                schedule = new ScheduleImpl(aZone);
% n) U9 }+ C$ y; A2 k+ a                try {1 ^. R6 u5 F3 y! N1 z  N$ ]
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* i- \. F2 ~; }9 M; U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ ^  [: Y- ?& h4 f
                        , n! ^. _0 H3 M: r- e% z
                        actionGroup.createActionForEach$message(list, agentSel);
$ v% f3 E! G; P6 h; |                        actionGroup.createActionTo$message(this, swarmSel);4 Q% V2 O9 P; ?  S
                        schedule.at$createAction(0, actionGroup);
% r+ C4 x+ N; G7 `* k+ b: d                        schedule.at$createAction(1, actionGroup);1 H/ U. u$ W* P
                        schedule.at$createAction(2, actionGroup);6 M: N# P5 c+ c$ U6 x0 h+ c' X

: y! h- u" }# o5 k1 `                } catch (Exception e) {! M2 y8 y* y" E( N1 G7 Z7 Y2 b
                        e.printStackTrace(System.err);" q) Y' o! n: g4 n
                        //System.out.println(e);
% U" r* `0 q4 j! u( M4 _, a, p                        System.exit(1);$ r: b* I0 V# S5 a
                }  m( h3 u! x( X: a& s  ~+ ^

' c' \3 m* n5 o! c: l: _' k' m; v3 n4 w) k
        }4 a9 ]) t7 u: w6 A& p

6 y* A3 z* T% v& l! L, a/ i        private void swarmSetp() {
: n- e, H; K' c                list.addLast(new Agent(Id));  y# \1 `: J* S; l, \0 ^
                Id++;
2 L/ q+ a9 V% d7 J8 _( K        }9 T5 {. z. I8 f3 R

3 m3 m- @8 w7 W4 k, H        public Activity activateIn(Swarm context) {: A- u! e# b, v  e4 B9 x
                super.activateIn(context);
- g  Y- E7 x9 n( |' g  P+ p                schedule.activateIn(this);$ b2 V( C# R' `+ r3 f: U
                return getActivity();% U& J4 S, \' T* A
        }. k& [! \  h) N5 \

" j# @, ^" w1 t( o# Z        public static void main(String[] args) {) Q$ I6 A) w9 K4 R1 j  z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: m% i+ P2 Z- E! v* _. j- A                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ O8 Z  C2 _" O' M
                swarms.buildObjects();
4 r0 D+ d- m' p/ E( b                swarms.buildActions();- ~! o. V2 Z/ t3 I4 Z+ B' X
                swarms.activateIn(null).run();9 J* U9 I% Z2 l
        }' u$ j6 P' v0 k
5 `5 i7 D; l4 v; ^' i' u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-27 05:03 , Processed in 0.017095 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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