设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10105|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( ^: P0 P5 G8 j& a9 Z2 M9 e
! M& }' `0 n9 k0 \3 @7 o6 V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ J, Z0 w  d. y  b0 a. }# r
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 K- l, {! s+ r& m# q
swarm.SignatureNotFoundException
5 W. C0 M! C! e5 \        at swarm.Selector.<init>(Selector.java:76)
  K' H$ U1 z( a/ Y/ l' o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 S" V0 A5 U- h; c- o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ T2 V' X* F. F( t6 O: l
1 _) q, Z0 Z( l5 n, T

- O6 }% ]; W' ?3 m) V+ c6 Q+ mimport swarm.objectbase.SwarmImpl;
7 \9 F% {! X; C) I6 |! g0 H6 w1 Himport swarm.objectbase.Swarm;4 Z- X" G4 B- b5 _, Z1 V8 j' Q
import swarm.activity.ScheduleImpl;7 i! N5 f$ H8 l4 d3 x. ^9 a# c
import swarm.activity.Activity;
$ B0 `# U, D1 a/ Z" K; w" n' Limport swarm.activity.ActionGroupImpl;
1 j8 t/ ^( g6 @# H0 I0 zimport swarm.collections.ListImpl;* l  t1 u3 |1 K
import swarm.defobj.Zone; 2 d  T' i( b$ i2 o/ z7 y3 h
import swarm.Globals;; J- P/ |0 v1 y* i  B
import swarm.Selector;0 y: H6 o0 |% j' y" c. }6 |7 R. Z
import swarm.activity.ActionGroup;
1 c0 z; n9 f! g$ Q5 ?# `1 @' q$ tclass Agent {
) r! U# H' c6 l9 r9 \4 h9 ^        char id;- I- S8 y0 s6 b6 T

0 ~( }) Z% S" b5 q        Agent(char id) {
/ |0 W# C. x3 b                this.id = id;/ R/ o; R. b2 j
        }
" h0 ?% H1 m; N3 p1 S3 q
8 q2 {; B; c% }" B        public void agentStep() {
4 I! y( ^# B* E- U$ X4 ]* [9 Y- C                System.out.println(id + ":" + Globals.env.getCurrentTime());. @* o# a- h5 f0 U( [: r
        }
% |+ M1 p9 |4 f  O( W' @% r7 ]- m}% o2 c" S% _+ a6 Y

* Z# S$ B4 V/ lpublic class ActionGroupDemo extends SwarmImpl {
1 x, R+ ^! p3 P* Q) R        ScheduleImpl schedule;
% o0 E; u/ p$ j# Y        ActionGroupImpl actionGroup;
1 b& R* \& z. O  p  w* v5 N. E        ListImpl list;: r" c) Z4 V/ O/ e
        char Id = 'a';3 j& Q  r" D: F6 D  R8 l9 y
. G4 t# J/ v7 n. h3 D  c
        ActionGroupDemo(Zone aZone) {
6 }* ]3 n3 v+ j% E                super(aZone);7 x8 ?/ ?* A. O6 B  B1 z& Z
                list = new ListImpl(aZone);
6 k# y/ n1 S- p% l                swarmSetp();' N" H/ B5 W" Y3 z& g- u, }
                actionGroup = new ActionGroupImpl(aZone);
% L% D* ]1 n* D( Q                schedule = new ScheduleImpl(aZone);2 `5 z4 ~; |' O: h& V3 d' E
                try {
% D5 @* R, C& Q) K4 k* S9 P2 A                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) N* P) i6 i" h  C
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
9 R& ~: U" e4 S3 D                        
5 Y$ _' N6 k- [/ Z0 G  `7 N7 W' r- H1 Y                        actionGroup.createActionForEach$message(list, agentSel);) l4 U& [. D! W. @  t
                        actionGroup.createActionTo$message(this, swarmSel);* x  l3 V! B$ `8 x9 b/ M  [
                        schedule.at$createAction(0, actionGroup);0 u) w+ `; T" z* \7 Y
                        schedule.at$createAction(1, actionGroup);
1 Q2 B+ x% C% O; Y( [/ z% T& o! w                        schedule.at$createAction(2, actionGroup);
, p# C/ ?$ f" I: U
0 D  \! k* |0 T7 P4 I                } catch (Exception e) {; ]  E: }6 I' S  {, m1 }
                        e.printStackTrace(System.err);6 {3 x: r4 U' _* Z
                        //System.out.println(e);3 V8 t. J% O) }+ G1 u. L
                        System.exit(1);
; K/ r) D1 N% ], i. U2 |+ V, x" b2 p                }2 o+ |# U- \) c9 [" f

/ d% R3 F* R. a' J5 y3 d9 m7 e% k8 V7 ]6 p: g3 E& m) d
        }
# R4 T  Z) m! Y' w. |2 l
6 L9 }& M  W2 @% Y1 R! ]+ x        private void swarmSetp() {
. t2 B, v) ?, x- N                list.addLast(new Agent(Id));
2 x% q8 f! j7 N4 Q; f$ O, U9 r                Id++;
) s# X/ L5 A. v7 U        }
, X: Z7 v$ _2 A4 u  d$ k& J% E! w9 Z% s1 Y
        public Activity activateIn(Swarm context) {6 l1 K7 e8 A6 t; S
                super.activateIn(context);, Y0 {) n: G7 e5 m
                schedule.activateIn(this);. |, R& o  \. k6 r7 C
                return getActivity();
! N0 C- \* M, c( z) F        }
7 ^/ o0 @" y9 J$ [# j  Z
2 Q" L7 v" I# W0 n3 ^/ j        public static void main(String[] args) {) ?+ [) N5 A4 e. p& g5 a: Y3 F, ~
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) Y) s; \9 l/ w% d5 S- ]* M
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" Z- K9 r, ]4 u) V- t4 K                swarms.buildObjects();( L5 y3 [# Z6 |* A: t+ G
                swarms.buildActions();
: R! _, Y6 I8 R& ]                swarms.activateIn(null).run();6 `, \; \+ c5 \# u
        }6 y) N& Y8 ^' Q
. G/ ]* J' F' O
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-3 23:03 , Processed in 0.016246 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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