设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13682|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 t( P. P$ n6 ?  D: t
8 q- t' M( |2 p! i- d9 a' j& X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) V' e" j7 S" T' l
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( ]' M6 T  Y/ n* e4 P* {6 a$ V6 M
swarm.SignatureNotFoundException
6 ^8 Y7 E: x- t        at swarm.Selector.<init>(Selector.java:76)
: Z% X: L2 v' g4 M! ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ |. \' }4 D6 V1 u2 ?; @+ n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, j6 H" y) a( }, U1 v! p* `) |. C. A" Z- u! [

6 Q/ \8 {! G, k7 T& ^( E& b. d% Yimport swarm.objectbase.SwarmImpl;( x9 A" f$ N2 ?% d* P4 @
import swarm.objectbase.Swarm;
- B- o" A6 i% i* I' w( X) D  o! Aimport swarm.activity.ScheduleImpl;
* m" O" t0 E0 g$ _- f1 ^import swarm.activity.Activity;/ g) ~* @& P6 B1 v
import swarm.activity.ActionGroupImpl;& ^$ u9 z% V3 ^, F
import swarm.collections.ListImpl;+ K* Z, a" q/ K0 O& i/ M
import swarm.defobj.Zone;
: j+ @! ^1 |  ^- F3 c5 J5 L/ n6 limport swarm.Globals;  D- u( K" y* g3 Z: W; F4 v
import swarm.Selector;
$ j$ r- ]/ g6 P+ `import swarm.activity.ActionGroup;
- y" [' S% V1 l4 Jclass Agent {' u" x& A5 j$ M/ }+ _3 J9 l& |
        char id;
$ h! ~# n2 x+ B* o
, J" x; H; i7 [$ Z  W. L: K        Agent(char id) {
3 L  o- x4 D* S+ V( I  C                this.id = id;! H! E, @$ Y/ F7 f# o/ R7 i
        }& E* F& h3 X. ^/ S' e' Y( b

" s: Z- P  E/ z4 g2 [8 j6 F        public void agentStep() {
4 @0 u& T( _% S" `# E                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 }# n( ?$ H: D4 f  W        }& q, G7 y7 ?  ~! @" h. n- _
}
! r0 X" k: O7 t8 x; O
1 r- {/ P  ~/ {; _public class ActionGroupDemo extends SwarmImpl {& r( ]7 F0 y2 S% m& c
        ScheduleImpl schedule;
) U. ?1 O/ U7 Q6 b3 I        ActionGroupImpl actionGroup;
8 {( G, g% U+ T/ V        ListImpl list;
% P7 S8 a; A- X) m3 t        char Id = 'a';
' V) w0 L$ C: D& W% A' I# E, ]% [0 _" D3 p/ \4 f. K* v1 J3 X
        ActionGroupDemo(Zone aZone) {7 g- [, Q& k  r/ F9 O! w/ }5 j
                super(aZone);) {6 b- }3 e9 f: ~% P# O0 c4 ~
                list = new ListImpl(aZone);
- Y  x, F! b. b* H3 N                swarmSetp();  Q4 C9 g: ~4 P4 t
                actionGroup = new ActionGroupImpl(aZone);$ y+ H4 w: t: u) @
                schedule = new ScheduleImpl(aZone);
, n& b% V( T+ [: r5 A' M                try {
0 S/ c' k- p+ e; ^& |                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ w9 ^4 u& P# o2 y/ n- M                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
. N7 I6 _- w0 `- |                        
& {7 o7 a$ C: e4 `% O6 @                        actionGroup.createActionForEach$message(list, agentSel);
/ \6 n6 \$ W2 l                        actionGroup.createActionTo$message(this, swarmSel);
4 o3 X5 i* Q4 i                        schedule.at$createAction(0, actionGroup);, ~) ^' _% L- G5 L) d
                        schedule.at$createAction(1, actionGroup);* w# C: t0 V: o4 @6 `: H- N5 O+ A
                        schedule.at$createAction(2, actionGroup);
, Y7 F. G( u1 ^; M- g# g# z+ a5 C9 m. j6 F, [# n7 C( ~
                } catch (Exception e) {
; y7 |* Q" u, Q                        e.printStackTrace(System.err);
; T: j& c$ ^( ]7 x. p' P$ }0 Y                        //System.out.println(e);$ `. \, S! _8 {4 h* t9 `
                        System.exit(1);+ I4 `7 P2 H2 j2 X- g" z# i- y
                }
4 ]7 F# L+ [& c9 R
$ ]3 `# F/ R' |/ a. Z
8 [: A$ R/ W. j# {        }4 P% R  i0 V6 `# n" j. G

" z- P/ v% h! k$ M% k% w( o        private void swarmSetp() {
' L- {! R% x6 ]4 A  T                list.addLast(new Agent(Id));/ F% l) o. m: S9 z! C
                Id++;
. r) k1 I9 H. {* q        }
7 P- @. S2 t' R# J+ {& t) Y
5 S4 [9 A3 g) o8 l( a1 `. X        public Activity activateIn(Swarm context) {1 I/ q# F9 K* \8 ^6 K. F( S' b
                super.activateIn(context);5 I* T2 H' M+ U
                schedule.activateIn(this);
% V; y; d8 i; a: H                return getActivity();) {- q/ `) v  ]; O; J
        }
! R- v' c$ m. @; j4 I7 o6 z% d9 B0 N
        public static void main(String[] args) {+ T+ [* a4 l) y6 u
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);6 b) X8 L/ u0 l
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);/ ]4 f& b: ^: ^; Z0 u; V
                swarms.buildObjects();% I& i6 s9 F5 K" s# y
                swarms.buildActions();
) I  L! ]2 R3 A7 F  Y( |                swarms.activateIn(null).run();
* A7 e  b) B+ @! K        }
8 `$ X* q, I- x  L1 y0 g1 |" j+ [, p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-14 14:12 , Processed in 0.017045 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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