设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13242|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" a5 k- a5 z& d  j7 T. h/ g# \4 k1 {% E" H/ X' {& c- D( e% `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21! q3 G/ n8 d1 p& Z8 O, t
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激., E; o5 `4 Z0 n4 \7 i$ @. w
swarm.SignatureNotFoundException
5 ~% R: F% Q3 t$ X& |7 P        at swarm.Selector.<init>(Selector.java:76)7 p. p# m4 N% k$ O
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
" `/ o1 x: Y( T        at ActionGroupDemo.main(ActionGroupDemo.java:67)" @, L0 c6 @$ I; x6 W7 }

- W" h4 b7 Q7 c. D
6 {+ ^% n2 w4 zimport swarm.objectbase.SwarmImpl;4 o  A6 W7 ^! l8 H8 N
import swarm.objectbase.Swarm;
' D2 T: U! z4 _) A9 |- }, V; W7 D0 A# |import swarm.activity.ScheduleImpl;1 _( g) Z& j' o
import swarm.activity.Activity;: y3 d2 t0 z1 h: V2 @, O7 m1 k/ S. V
import swarm.activity.ActionGroupImpl;
  F( ?, U0 u! m: C: |* wimport swarm.collections.ListImpl;
" ~4 B9 t1 Y' k' D+ Kimport swarm.defobj.Zone; ! T6 L1 N' {: h: G% b* f
import swarm.Globals;+ ^2 w7 ]3 e9 d) W
import swarm.Selector;1 ^% k: {1 P, r1 T' o# s
import swarm.activity.ActionGroup;
" u+ d2 K" \3 Z. [class Agent {
' p7 j# b2 b( G+ x! m! C        char id;
( w# e* C1 f1 t1 C  H4 M7 X# S1 o, q9 U  s2 t! q
        Agent(char id) {
5 \& K& ^" i. s                this.id = id;
; U6 Q7 p" ^- n4 R4 O        }
& `4 f% r5 g9 S, h# o
  Y. J5 L0 v( w4 Q        public void agentStep() {) g9 u& S, k2 Q
                System.out.println(id + ":" + Globals.env.getCurrentTime());
- b7 q! b; W* N0 m- g  t( v        }
8 h- r2 V: ?" Y. J' [}
6 u9 h2 D5 |/ E' h! K* k
5 K: B, q3 d4 h4 ?( _' s! z: Zpublic class ActionGroupDemo extends SwarmImpl {
& }$ O! _4 [2 ~4 [% a+ W        ScheduleImpl schedule;9 y2 r* u. i; M
        ActionGroupImpl actionGroup;! s' V3 c5 u* i
        ListImpl list;
0 @3 l: x( \9 Y. g        char Id = 'a';! s# _8 B+ V. X

/ e) u7 z, }. o/ N        ActionGroupDemo(Zone aZone) {
' Y: t7 P* T3 j2 m7 M                super(aZone);
! a. @5 x; X& z& D+ j3 w, I2 d6 T7 B                list = new ListImpl(aZone);- q5 k; p% _1 w* a+ Y1 s
                swarmSetp();* {  y& V/ `. j! a% W* E! g) ^
                actionGroup = new ActionGroupImpl(aZone);5 P; ], j) }+ h( G
                schedule = new ScheduleImpl(aZone);9 d8 e$ @# J: W2 t) M6 e
                try {
9 g3 X0 \1 n4 L7 T                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 I' i  T" g& ^  O: J: X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, ]/ k( Z) v; Z' o; x7 K0 E. G                        
' \5 ~' k" W+ N/ C7 M                        actionGroup.createActionForEach$message(list, agentSel);
! ^& M" l$ }: N5 a                        actionGroup.createActionTo$message(this, swarmSel);
. H2 C7 P- ?  e; c/ ^9 P3 ]                        schedule.at$createAction(0, actionGroup);
) v* j4 t: N6 p                        schedule.at$createAction(1, actionGroup);
4 c1 E' o. y/ a% J$ v                        schedule.at$createAction(2, actionGroup);
2 M" c/ `  b: [6 r
' e9 Q5 a. V4 G  Y! f. ]/ |                } catch (Exception e) {: K# F0 k8 `' x8 j2 @" O0 U
                        e.printStackTrace(System.err);/ c5 z6 Z2 n% l+ L
                        //System.out.println(e);2 A# z! D5 i9 A  i; C0 u
                        System.exit(1);
& ^0 R9 [+ A# `; k                }
4 j0 U5 M% [6 j0 K' y* b0 v5 j% O: w+ M4 E6 e4 Y
$ K4 U/ B  G, t. ]$ ^
        }9 ~# q  [. q- @7 `; _

, w0 R$ k7 x5 {. R- @        private void swarmSetp() {
; q* ^! [  N- u8 c                list.addLast(new Agent(Id));
: @8 ]% U2 c+ o( d                Id++;( U* X) Z$ v4 C+ @: h  o( O
        }
3 d/ {" w% X: S3 T) R# ^) R. V6 j0 P! ^* Y# e
        public Activity activateIn(Swarm context) {4 `& v9 E! @4 K
                super.activateIn(context);
( }* x8 u# l& q" ^% G; w                schedule.activateIn(this);4 a, s+ g# T' P6 @: w' i4 X$ {1 M
                return getActivity();# V! G# _. e- t' |' M; |0 _. G
        }" P8 M. @1 ~* v. B; R

0 T2 }  _! r1 y8 e5 G& X9 m. s! C        public static void main(String[] args) {
& @8 X& ~, Q6 `2 p                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: `+ c' V" W$ {! K& w- ^, W% ?# S
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 y9 S0 J! M, q+ H/ r# j. Y, ^
                swarms.buildObjects();) u* \' X6 O9 V: V( Y
                swarms.buildActions();
, L7 E' X7 m% \0 ^' Y, B+ T                swarms.activateIn(null).run();
+ }: A7 E% S4 h, o        }( t0 b/ M9 j. D5 {6 a5 t0 m
6 l% G0 @& ~0 r: C) \9 h  E1 v& e
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 15:30 , Processed in 0.021702 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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