设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5655|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : K; T1 V$ i  l; ~/ a: k
2 J2 y+ U& C- O9 f
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 z, @9 c' C3 f& X% Y1 T$ E$ B7 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
( R- E9 d0 S- `1 }swarm.SignatureNotFoundException+ f  M/ K: O* l7 t4 d
        at swarm.Selector.<init>(Selector.java:76)
1 \# G9 p# n9 k5 Z6 l% u0 ~2 h        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
3 F& l% L( x+ ]& r4 H4 ~        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( g) ^& h! W) X) g
& t/ `6 {" Q/ [% W7 Y( Q( q( ]& P( ^$ o. c( I4 J. x
import swarm.objectbase.SwarmImpl;
. Y8 n( Z5 u5 Rimport swarm.objectbase.Swarm;$ ~% u( R- g0 X
import swarm.activity.ScheduleImpl;7 O" h' v/ L" z2 p8 c2 |9 i/ }- F# T# y
import swarm.activity.Activity;9 C! W1 c4 P7 G) E5 x! |6 ^! s
import swarm.activity.ActionGroupImpl;
/ C% M1 D2 T! \9 J/ f' @import swarm.collections.ListImpl;
" ~. H' @$ J8 B  \- Oimport swarm.defobj.Zone; 3 o$ d) M2 z& M; t1 {' \; q
import swarm.Globals;
9 s6 Y% l( E6 r! K- g( J: cimport swarm.Selector;' M3 _& G5 D; [. P! O. W( X
import swarm.activity.ActionGroup; 3 X# z7 y6 C- s" c, Y
class Agent {
6 i- @; K3 \$ H, m3 M4 E- n+ t        char id;5 O9 @9 X- l5 H' X; K9 S, K4 X8 ?
% Q0 H) d+ f* s( `7 g
        Agent(char id) {
* b: e+ S3 T/ K9 i* F8 n3 y4 \                this.id = id;7 B8 Q7 \$ C9 h! V- Y2 x- W
        }1 R3 q! Y1 f  B  v8 F

2 q3 J/ Y" w- i. u" I        public void agentStep() {* |& T' P8 [& q4 L
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 }9 J. S2 r3 l1 [0 Q5 i2 u        }
# w; P9 b5 L" t" h0 ]8 r}. j7 V7 M1 S; Z

  o4 e7 H0 I# Dpublic class ActionGroupDemo extends SwarmImpl {( V2 @3 \* B& c# j" d2 X
        ScheduleImpl schedule;0 c/ P5 R& f6 Y/ `9 ^  W6 h* Q
        ActionGroupImpl actionGroup;. x" {5 ]6 \9 g5 w
        ListImpl list;
8 U; U7 `5 a0 z) }' R        char Id = 'a';; v8 F3 B' Q6 B1 {+ K
6 \3 i4 w1 J9 K, R
        ActionGroupDemo(Zone aZone) {1 ?& Z! v3 `+ q3 `3 ]. V2 b
                super(aZone);
6 `" v9 W" M; \  d                list = new ListImpl(aZone);
$ z4 F8 N( {+ _: a                swarmSetp();
3 l2 |- R$ W" i; \+ R8 X7 d                actionGroup = new ActionGroupImpl(aZone);
8 [& J; }' v! a4 M; W                schedule = new ScheduleImpl(aZone);+ F5 b4 R8 a' _8 w$ G
                try {
" f/ E; [) L& }# N                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 k2 _* Y& \6 Q$ C2 {6 x: Y3 T
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" r! g6 {+ j* ^- X                        
/ z/ f9 W8 k$ i2 D# N& V$ y) _                        actionGroup.createActionForEach$message(list, agentSel);
" H1 {  l+ f4 b5 y' K                        actionGroup.createActionTo$message(this, swarmSel);
' y) J8 v8 t* N* M" Z3 q                        schedule.at$createAction(0, actionGroup);
! t( Q# H) i' V' Z0 v0 O# [                        schedule.at$createAction(1, actionGroup);
; ]+ |0 k* Z0 P; i% H" [- p/ c3 i+ d                        schedule.at$createAction(2, actionGroup);+ h$ O9 ~8 p4 ^

3 N8 e' \8 R  N+ f* Z1 g                } catch (Exception e) {! ^  d/ {# J9 t9 U$ A- S5 c
                        e.printStackTrace(System.err);
& s  Q" C6 k: W) |) G9 M9 L8 T                        //System.out.println(e);
6 Q* \( ^- g. P( ~' s& [8 _0 \                        System.exit(1);  U( X" K2 X" T, Q/ u+ ~3 C- d
                }( ]7 ^" t* a  \3 |
# H+ s" Q  ~, {1 |7 Q4 B/ ]# q
8 f; S0 p. p- s! b& y. W7 R. Z
        }& c6 d# n* a- w3 t7 V8 P

/ _; a; b1 ]: Y2 S* f        private void swarmSetp() {
* u, T; H& a& x                list.addLast(new Agent(Id));" C9 ^8 [; p7 D) x0 O
                Id++;4 c% D6 M6 X, _
        }2 H* }' x& L6 p/ `3 y5 \

  t$ {% q# w+ w        public Activity activateIn(Swarm context) {
! c1 E% J9 o: x* X                super.activateIn(context);; P) d) p6 t0 c% ?$ U# p9 S9 r
                schedule.activateIn(this);
' t( b& M' O- O/ j" i2 S, C9 q                return getActivity();/ W. w0 I( S5 S3 L: T
        }
4 x7 X* `  {- Y4 U9 a7 K- q0 x4 M  G( H8 Q1 t3 [# Q8 E* Y1 A
        public static void main(String[] args) {
! u+ ]. H5 {: Y1 N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& q- v' A6 A5 ]( W+ w
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 o% h+ x+ m! W! D
                swarms.buildObjects();
' v  K7 D) w8 g& ^3 v                swarms.buildActions();
8 F. V4 q7 T8 V4 x/ Q                swarms.activateIn(null).run();+ I" v/ @3 ^3 J% D. j" L/ }7 H
        }
" U  D* d$ n4 G6 G
( K1 K0 e5 W. n8 \7 s}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-17 08:58 , Processed in 0.017009 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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