设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11917|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' |& ]# Y. f% p3 t

% U, S5 z+ h4 Y0 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 w" M9 T9 a1 x4 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( u0 k+ L7 ]0 o6 }% \4 `
swarm.SignatureNotFoundException. v3 J2 v+ |( u+ C1 v3 J/ p
        at swarm.Selector.<init>(Selector.java:76)& {* v: ~" f0 C3 [" O8 \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# q- P+ a" m2 Q3 q4 A4 F        at ActionGroupDemo.main(ActionGroupDemo.java:67)& c. j- K' O+ w$ z, z% _( J

& q9 ]. K: C: g& @9 q# q+ y. |% `! u, [) F/ i
import swarm.objectbase.SwarmImpl;
6 Z. P6 N* E% X5 L' Fimport swarm.objectbase.Swarm;$ z- d& o; _7 y
import swarm.activity.ScheduleImpl;
) D- J4 W" F/ |* x) D+ h7 zimport swarm.activity.Activity;
; Z1 }# r7 h& a' B/ N1 A$ D0 Limport swarm.activity.ActionGroupImpl;
  ^0 h0 Q) H$ kimport swarm.collections.ListImpl;+ {( c: h: p( B
import swarm.defobj.Zone; , O  n- R5 w( `; t" M. Y
import swarm.Globals;
" d" T/ t& u- k) Simport swarm.Selector;
, L( R+ T8 e  }1 nimport swarm.activity.ActionGroup; 9 x" e# n8 Z0 @
class Agent {
. n# x4 R3 |" D! L! M( |        char id;
* G* D2 T8 e, P, T, \5 W2 N' P' y4 L& p  w! b4 F+ o
        Agent(char id) {
  e7 \0 A" S! v2 ^3 Q                this.id = id;% b9 O- }0 d2 e! w% {
        }' N) G7 Y1 F+ i. p( a% G

. l1 F1 c+ C/ X- O4 _        public void agentStep() {
( K8 N4 }6 {8 }+ I+ V" e                System.out.println(id + ":" + Globals.env.getCurrentTime());
& m9 M/ f  W" ~6 f        }
+ q" q6 \" F1 v4 @% A}
0 f9 T! o4 j" e/ c# t7 u, ?7 r$ v) ?3 l. p2 ]
public class ActionGroupDemo extends SwarmImpl {
2 ?! O2 l2 B: z# p' A) G; K        ScheduleImpl schedule;. r: Y. \( h' k( I, A8 p
        ActionGroupImpl actionGroup;
# f, p2 z& F# N! g1 ?, k        ListImpl list;2 V% p" `8 _* N! l4 g
        char Id = 'a';. H8 h) m! K& b
+ V, G) P! \' Z
        ActionGroupDemo(Zone aZone) {5 _2 ^# l! i: @: U
                super(aZone);' i* ]1 e, N0 ~/ o% _
                list = new ListImpl(aZone);/ a1 |& P) ]+ y9 J- Z9 p; W8 t2 T) M7 H
                swarmSetp();" I- M: R* J7 f# ^/ ~6 M# G
                actionGroup = new ActionGroupImpl(aZone);
$ q; U$ s( `! V$ s" N                schedule = new ScheduleImpl(aZone);# V7 x1 P) j$ Q7 G" \7 A6 u
                try {
1 P, s8 P: {' T! n/ L! b; v                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 m" [9 o9 B1 ~  m& ]
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" p: z$ ^7 ~7 |% e7 t) i
                        $ A: v) b$ D3 M
                        actionGroup.createActionForEach$message(list, agentSel);9 J+ B5 ^: `; z, [% P. K/ h- C' h8 O
                        actionGroup.createActionTo$message(this, swarmSel);
% o8 _4 l1 \! O4 [" k( {                        schedule.at$createAction(0, actionGroup);
" o8 x4 m) M+ Q/ f. L9 Y5 B                        schedule.at$createAction(1, actionGroup);2 f7 z, t0 d  O1 W' Q
                        schedule.at$createAction(2, actionGroup);
% @1 H- b) X, ]3 B6 S5 a4 d/ p  k9 d. m3 |
                } catch (Exception e) {- b$ T8 G$ v5 u; U9 ^) a3 ]
                        e.printStackTrace(System.err);% {% z  i, c3 E$ \8 H
                        //System.out.println(e);1 h+ q. ~3 f2 x
                        System.exit(1);! n6 i" K( q; Z/ v' }; k! {
                }5 |0 C) D2 T. {' \4 G" B1 b9 d6 `" b
$ E4 L, X8 h% R
6 L/ I8 U; F$ G* d. ^
        }
' Y0 k; n" z# J1 @( u# N  k
% B# r& |2 P0 w        private void swarmSetp() {
! y) o. r, y4 T& y) b- R! f( B                list.addLast(new Agent(Id));
/ J* U# t+ y( a5 ?# `8 I7 M! L; o                Id++;  ?+ n: k+ f) a  k* d" P, z
        }
, w" k0 g0 p1 n5 ?1 V1 g4 r0 O2 w( W* b
        public Activity activateIn(Swarm context) {
1 x) _3 T; i% U7 S3 h" P1 `( ?                super.activateIn(context);
2 w% j% V- V) F8 ]/ p) F3 @' \                schedule.activateIn(this);5 _5 X- l8 c* N4 \3 E3 [. W
                return getActivity();
2 ?6 u4 b0 h$ X( R5 a        }* @0 E1 K) h+ P; w6 z
4 f. F1 F( Z0 S- E
        public static void main(String[] args) {  a$ \' Y' x6 e: Y( h# ^8 W* ^1 Y6 z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);/ ?' P$ f% }# Z- f0 d1 {! }
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. K4 I2 F7 m6 X8 M3 |; U  `                swarms.buildObjects();
& C- E, Z- x2 V8 h9 R( R                swarms.buildActions();, r2 Y5 [" ?. a) ]; T" ?
                swarms.activateIn(null).run();
6 F" ]9 P& ?" o) M, Z9 Z$ k) D        }$ G/ Y( @& z; B! A2 @
7 m$ k/ `; N" J1 g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-25 14:11 , Processed in 0.014433 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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