设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7586|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, Y- ~$ S! S2 x6 n- l3 @6 h: E8 a2 [% J  F( z- B1 h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 J" T% b2 B6 y. D0 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.* [. b. Z+ {+ p$ ?1 F! C4 q
swarm.SignatureNotFoundException
9 r, p5 |" O+ t8 Q/ q3 a        at swarm.Selector.<init>(Selector.java:76)
$ t7 t+ P& O5 k; l+ }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ I1 @2 [. i2 m5 ?! h
        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 \! E7 a5 Q2 c: j- n- a. [4 D
+ R! E& t/ o2 j
& |- Q! _$ k6 ~/ U$ Z% Z% Y* Y
import swarm.objectbase.SwarmImpl;( T8 z- f* A2 ^& D
import swarm.objectbase.Swarm;
! k4 ?/ O( M# O! {import swarm.activity.ScheduleImpl;8 e# Q& S" c* F/ E3 ]
import swarm.activity.Activity;
3 y& T  K+ Q8 Yimport swarm.activity.ActionGroupImpl;7 R$ z0 o6 ~' P/ {2 K; f
import swarm.collections.ListImpl;" A' }: D6 |. u$ ?6 E) T/ F5 X8 a
import swarm.defobj.Zone; ) |  J. F: L5 \2 j6 v& ^0 l- l
import swarm.Globals;; R, @. x* G$ v+ Z6 R  S
import swarm.Selector;9 @" L* V- n* W' m5 _: T
import swarm.activity.ActionGroup;
; d& t8 y, ^6 g* X4 ?5 Q% f* Cclass Agent {
2 `4 X2 B9 Y, M" b) q        char id;0 L' R8 y; k0 Z# @

1 Q: F9 p$ E8 E& O2 O; q7 E; J& M        Agent(char id) {
7 \7 n- t. i1 c6 J" Y+ M, R; U: q                this.id = id;
! t; Y4 B" ^* q        }
  @( f2 L8 u1 i2 q* Q7 [: L: H( T5 X3 _
        public void agentStep() {' i$ e7 u, P, C4 d5 K* x
                System.out.println(id + ":" + Globals.env.getCurrentTime());( x& r% W! w7 F1 t
        }  M: C# C. A9 c2 W9 q: l; c; s$ q7 a
}" }& ?: F6 w6 p* a3 T# S

: j! }! c( j+ Z/ t* S7 dpublic class ActionGroupDemo extends SwarmImpl {1 R0 ?0 u) m* q6 p: |# M
        ScheduleImpl schedule;
9 n" x+ n- P' C. k" b% H/ n        ActionGroupImpl actionGroup;/ K% J- R" Q6 ~3 e6 Q0 W+ y/ R: Z
        ListImpl list;
) _6 o, k- Y" R- D+ A        char Id = 'a';, m4 I5 A6 ~( \; n
7 @/ P  s; K1 s  h
        ActionGroupDemo(Zone aZone) {/ i3 j3 y4 ?4 r1 h
                super(aZone);
. h& c5 x: F3 n1 G! ]) }; J                list = new ListImpl(aZone);
: g: k, _0 c- v$ |+ C5 Z/ k                swarmSetp();+ q' S/ H- s! _' m' Z5 z
                actionGroup = new ActionGroupImpl(aZone);
, p7 G3 o6 o% E! x9 T                schedule = new ScheduleImpl(aZone);
1 h: Z1 M( a( A1 |                try {8 H* |& g) h6 r+ A* Y* y% Y& \2 H# u
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' P- ]& p' f5 Y3 M3 Z5 @7 W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 n+ M: x% S; r4 x8 ]  I- E' i
                          e; U2 [; k4 D. F
                        actionGroup.createActionForEach$message(list, agentSel);2 e1 \2 g, ^4 ~& z" x5 m* T" N
                        actionGroup.createActionTo$message(this, swarmSel);' O" @7 J( j; \
                        schedule.at$createAction(0, actionGroup);
. }5 I' d( p1 s: Q* R                        schedule.at$createAction(1, actionGroup);
" K) O4 }  S$ G                        schedule.at$createAction(2, actionGroup);
7 r4 z( P" o" P+ d7 M9 \/ z, j$ d  j# V) T4 Q7 t
                } catch (Exception e) {& a, B' N$ D5 S$ w/ p
                        e.printStackTrace(System.err);( u+ P/ r+ P; H7 l' A2 D  J2 c
                        //System.out.println(e);
9 i) K, l  z% q, O3 E                        System.exit(1);7 C4 e" [6 ?) ^; S% l- c
                }
0 H* f) t5 T5 H) o4 u7 |# [0 P5 Z  e% ]4 m
- d2 R. |% U; l, e) x. G
        }
) e$ @; {/ o) q$ K! v  c! Y0 t4 m. z, h# V2 O2 M
        private void swarmSetp() {3 S0 A% |6 a  g4 I  N- d7 P
                list.addLast(new Agent(Id));8 ?) b2 ~& v( X7 h" |9 g) o2 k- v
                Id++;
7 e  M* s/ B& W; Y( `9 H- S        }
$ g! \( _$ t/ u% [; k- Q: s7 i$ u- L9 O) H
        public Activity activateIn(Swarm context) {
" t: E! e6 K9 }9 e/ Q+ O                super.activateIn(context);
& H9 H0 E+ N+ S- ~6 v# s                schedule.activateIn(this);$ z' o4 e- |4 b9 y$ Z& [- K
                return getActivity();
+ _* p0 X( e  z        }! O" ~" y+ H: |2 }1 A

. ?+ Y7 [' g( x$ h6 E/ q        public static void main(String[] args) {4 |% V# _3 ^. V( ?0 F
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);4 [- [0 E$ w! L& v1 [, g1 Z: I
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);9 X' e# u5 n- b
                swarms.buildObjects();
! p* Z  Z1 B9 U: p  G                swarms.buildActions();
9 x$ C- m% a' k1 D; F                swarms.activateIn(null).run();
( i8 t4 E0 ], i3 J1 |        }
, E! O2 {" y9 D- |* a$ }" }- f  k. H, Q+ F+ X7 s$ {, j9 I% [
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-7 20:08 , Processed in 0.016409 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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