设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9928|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) ?; |0 p. S5 L( @# n, @
" O0 {3 }! l2 P. |9 s/ p% k% Q本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update211 r' z, |; t3 Y2 e
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., |- R* Q9 p. i' A6 s
swarm.SignatureNotFoundException) }% T* U8 {8 P; O7 k1 c9 d
        at swarm.Selector.<init>(Selector.java:76)
* I" C8 M: V  F/ T8 r1 g( n        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 Y/ ~( \" k4 Y; x8 o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 u9 {; R' W3 E5 e+ V# q
1 Y5 e+ L: t, q  _! b$ j2 w

/ E2 W5 a7 n% [9 Qimport swarm.objectbase.SwarmImpl;
" ?0 i1 D( c6 T$ Nimport swarm.objectbase.Swarm;
3 F5 Y8 z0 i5 Y3 e' X$ Ximport swarm.activity.ScheduleImpl;
' O& t, ?, z9 ^0 aimport swarm.activity.Activity;6 r: ^! c" [% h: e
import swarm.activity.ActionGroupImpl;
) j& r6 g& h/ R& b8 Q1 Limport swarm.collections.ListImpl;
! t% z0 H) m5 @; d9 ]5 Timport swarm.defobj.Zone;
1 i* q! `( I( k2 iimport swarm.Globals;4 H; m; _, b1 w* j
import swarm.Selector;
; |7 I2 l+ e0 S1 _import swarm.activity.ActionGroup; $ W' F2 a4 P; h0 C2 f
class Agent {0 T8 e: K  l3 W  i5 ]
        char id;/ n2 c4 O3 a0 d/ u9 V- X% W
# q9 {7 B5 O6 t" u! f
        Agent(char id) {6 V/ `9 |+ i% N; u/ {* q  G4 V  |
                this.id = id;
( m& e3 @: @' F* c& u0 I" W        }
$ A  ^: P- [, M5 \6 P/ O1 N. e& c! D) u0 i' Z% x
        public void agentStep() {
) w1 M5 C# C) e8 G( ^" t* o+ d& Q6 m                System.out.println(id + ":" + Globals.env.getCurrentTime());- _4 }" F* E4 C! e7 y. N2 l; N
        }
1 W2 {3 p( Z1 Q/ R, t}
$ `. N5 E2 u2 g  A6 c' W9 _9 C% [$ ^- W" D/ h
public class ActionGroupDemo extends SwarmImpl {
" u  a- f  r7 t. K4 o# T        ScheduleImpl schedule;& u; d9 `. j" V8 C) V
        ActionGroupImpl actionGroup;9 i* ?1 l3 C0 a2 G) k& H- s
        ListImpl list;
" V7 F2 X; Q% ^0 `6 i/ E8 j: Z& o        char Id = 'a';
7 S) P# N+ l: L1 }# e' [" Q7 J# d' T' ]* ?
        ActionGroupDemo(Zone aZone) {" ]# O' d; \; B# Z  @6 B
                super(aZone);
6 {4 r* u, u- p% Z. ?                list = new ListImpl(aZone);. ]: s) C2 N8 b
                swarmSetp();6 H! {, i( c1 m0 f* b) S
                actionGroup = new ActionGroupImpl(aZone);* ~7 |, l, k8 G! [: Y
                schedule = new ScheduleImpl(aZone);) D+ }& b0 G, W: m0 I3 o
                try {
( L+ h2 `& S5 g                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  Y# \& ?- Q2 g  o1 R
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行" W5 Y2 ]  P, r  f
                        
* I6 v; e; ^- o) Q                        actionGroup.createActionForEach$message(list, agentSel);4 w" `- C# ?. x! I# Q4 p' P8 n$ Q) s5 `, C
                        actionGroup.createActionTo$message(this, swarmSel);
* p; }0 r+ a7 F4 R                        schedule.at$createAction(0, actionGroup);) N9 w! P1 w; U# p4 b6 O3 R; ~
                        schedule.at$createAction(1, actionGroup);
% Q# {8 G+ Z4 {" y                        schedule.at$createAction(2, actionGroup);
. [! {* @+ j" B% R2 N; v* c, O8 X  Y2 u1 `. p7 i: W, E
                } catch (Exception e) {
5 K0 E, n  w  ?% S3 N2 ~                        e.printStackTrace(System.err);
' V% s" h+ Z; b  p0 A                        //System.out.println(e);
7 \" ~! n3 Z9 B3 m5 h  t                        System.exit(1);
5 |% B6 W2 v4 `3 ]8 f( j) y6 @                }: r5 p, I: v+ g9 K2 j

" |) L5 Z& f& Q  i; l5 Q. T( P/ D( y" y8 }! I( ~
        }
6 r2 X( v* V9 }4 D! b7 [1 E7 _& }1 `* F; b) S* g7 Q0 F
        private void swarmSetp() {
9 @3 l' C- M# _" \4 v                list.addLast(new Agent(Id));2 p" B- u0 P- T( O) c4 q* j) q8 c
                Id++;
/ s( g% s8 M! d% B) L        }
% L/ D" ]: c  h/ ~
% u$ e9 r  c3 p4 q& {) O+ t% N        public Activity activateIn(Swarm context) {" R  A8 V& U; Y# O; ~+ H  D$ y
                super.activateIn(context);
, l$ b; S/ |( m& Z; }" t                schedule.activateIn(this);8 C; {  T/ u4 @. g
                return getActivity();
8 h4 v$ m( O! Z( ^1 ]+ M( `        }
; Y4 C8 i- P. h9 P3 {5 t
! G) V7 s9 s4 r5 C" G% a5 c0 @        public static void main(String[] args) {
/ I% F8 i, [% |' n' E' L0 M( ]                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
3 E; D$ z6 o# A+ ^1 U                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. t  v/ d2 Z% s! R/ A5 F
                swarms.buildObjects();5 j4 W7 s0 Z/ s) [
                swarms.buildActions();' c! R" |% k" g7 o  U/ \7 `6 p: I+ G
                swarms.activateIn(null).run();
9 M6 v: t* X% @& I4 _        }
# t" r- G$ S: n! }8 O" r6 x) D* c4 a
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-28 02:33 , Processed in 0.015261 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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