设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10667|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& X- F; s, P6 I% @
; E( N0 Q1 y% @- ^. h- A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* y" h. D: @- {* r; T2 ~
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 _7 M# Z  l. c+ u8 V3 m2 L
swarm.SignatureNotFoundException  e3 [9 R. p2 m. d7 L9 z5 \6 c. m
        at swarm.Selector.<init>(Selector.java:76)
+ T7 F- i' z4 [/ `: U* d6 p        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
* k' F- T. ~, l' u! r$ J  N3 ?( `        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ p/ |2 r% W  s. N+ q& s# c7 _0 @9 C$ Z5 D

$ u5 A. z% E5 V. Z/ @import swarm.objectbase.SwarmImpl;
% c* M7 s- g; K. ^3 K9 p2 x* c+ Mimport swarm.objectbase.Swarm;
* ^7 w% r) F$ Nimport swarm.activity.ScheduleImpl;& m5 ^4 n; n9 c+ y  X) E
import swarm.activity.Activity;; N# s9 T3 [3 U: q, d
import swarm.activity.ActionGroupImpl;6 W6 [( A. o  P) k" |. J
import swarm.collections.ListImpl;% l4 b: T& ~* B
import swarm.defobj.Zone; 6 P' w' L0 }" s0 @2 Y6 h
import swarm.Globals;8 L# e2 U+ y, r+ N9 s4 K
import swarm.Selector;
" Z* b/ T( N0 Vimport swarm.activity.ActionGroup;
. L! z% z9 O' K6 c/ ?0 @  jclass Agent {
, G6 c" y  b" _2 q" X        char id;
  N  G3 R) r" f& o) w0 A! y9 Y% e* @9 c& l9 f1 B" X
        Agent(char id) {! e: ], E3 w3 D4 z8 E
                this.id = id;
6 w8 b0 U* o  u7 k        }
# \' e4 x: ~5 e, Q
% u6 S, _  o* Q* ~) \" G; `        public void agentStep() {8 b( m4 T5 o. a0 s
                System.out.println(id + ":" + Globals.env.getCurrentTime());- f) k3 X' i  d' K0 K
        }& P# ^5 i: D) D* w% V
}
& ?- O, L# N1 O2 w
! n" ^0 v$ D8 z2 Z; o# U9 epublic class ActionGroupDemo extends SwarmImpl {
$ X  }+ h& P% g0 B, i# o) X0 s9 B        ScheduleImpl schedule;( Q$ s* k$ u$ z  X! J/ n- @
        ActionGroupImpl actionGroup;
' X3 F, V& p4 M8 O        ListImpl list;
$ I$ ~) r' {) B! l        char Id = 'a';: S9 |' K% m) X) A
+ ]' ^  V2 h2 g( G9 e) J6 Q
        ActionGroupDemo(Zone aZone) {- X, k6 r  o/ F
                super(aZone);
+ Y+ {  O2 A, O7 E: G' u: y5 m                list = new ListImpl(aZone);
9 y, h: l/ b  F' |$ I" T# i                swarmSetp();
& j6 e( g- Y7 L4 H. T1 Y                actionGroup = new ActionGroupImpl(aZone);
% I$ l! q9 D- y4 V  z( K. y2 t                schedule = new ScheduleImpl(aZone);
8 p5 N( N$ G& L6 X. ^& Q; Q- v                try {: }9 V: |7 }8 p6 A" Z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ x7 B) b$ Z3 A/ o
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. n( \$ _* ^+ Y' k# k
                        
) ^0 P6 e- _! X: M( ~& `                        actionGroup.createActionForEach$message(list, agentSel);
- n5 i! L6 `) H- @7 x0 {1 \! O                        actionGroup.createActionTo$message(this, swarmSel);
: ]4 O  H" C) X  a                        schedule.at$createAction(0, actionGroup);
! X0 k5 i# j3 R: o6 s6 ], q                        schedule.at$createAction(1, actionGroup);
. T2 Q0 z; `5 s- C6 W0 L# r                        schedule.at$createAction(2, actionGroup);
/ B8 d- ?8 k2 x7 B7 Z1 H2 K
8 c5 |2 o7 L( Z: y8 t% G                } catch (Exception e) {% R% {2 }9 c9 _8 P7 w' \. j( S7 ]
                        e.printStackTrace(System.err);  b; S* c/ _1 v+ L! F
                        //System.out.println(e);
- P) h% P1 M! j2 C                        System.exit(1);$ W; B. A6 R& D9 |; H$ y- B
                }
" U; D1 t3 i0 P6 ^
! E1 K: c1 U. s0 `  w+ `) K/ Y- L; @4 X- M. W
        }) X5 d  W/ D& V  _/ w
: j. V0 ^7 V) q: G; x
        private void swarmSetp() {! n1 K- }( J7 I5 Y0 N
                list.addLast(new Agent(Id));
8 b+ C+ b5 T# X1 M                Id++;1 J8 P# B2 z# Z9 d$ X! B( k) t
        }' }+ }/ m6 @' q! O9 f- P$ i

: X8 q' c: ~! h0 v' X6 U, C        public Activity activateIn(Swarm context) {
" ^1 t6 {' y" s8 A: ^3 R                super.activateIn(context);8 G3 X5 a4 O: y! h
                schedule.activateIn(this);& q' ~4 G( I2 T
                return getActivity();; C6 C- M. |6 G9 q; L
        }* p! F% A( a* M* A- a) V0 `
' l  g6 v9 l  Q  [1 ^6 I
        public static void main(String[] args) {
9 D9 `3 ~8 F2 Q4 r$ x                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 b  ]: @; [! g$ l# p+ _% s" F
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: f7 A: A. d0 J
                swarms.buildObjects();! F1 R& T- [  Y5 d: _1 c
                swarms.buildActions();$ a' u( C! U3 @8 T4 c
                swarms.activateIn(null).run();. S% ^2 K% I/ `7 n' V
        }
  X. G; d% S2 g, ~2 t0 P: l/ K4 \
8 C8 N) v! @1 Y' i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-20 02:57 , Processed in 0.018213 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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