设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9603|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" a1 X3 S) k* a8 v
0 T  `0 m. J# q/ Z, ?7 p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21. k: V( S4 q  v/ K* D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% k% t: T8 X9 E
swarm.SignatureNotFoundException
3 p, B& e% ]2 e# Q& {8 Z8 K        at swarm.Selector.<init>(Selector.java:76)4 a: Y/ T; Z# Q4 L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 z4 ]* N3 H+ Y1 H+ k" e        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- C0 ]* n0 G4 Y$ A: u9 w% m5 B; a9 X- L5 x

% S# q5 }6 P+ aimport swarm.objectbase.SwarmImpl;
7 i+ o' n$ k( O! ~; q2 Q7 v7 \" Zimport swarm.objectbase.Swarm;
6 e( v# X- v' ~' [2 g% [) y. Fimport swarm.activity.ScheduleImpl;" K+ T% s+ D/ f
import swarm.activity.Activity;
3 c& a  x+ K- _) f  s6 Q+ X+ Yimport swarm.activity.ActionGroupImpl;
5 M3 F. H& j! Yimport swarm.collections.ListImpl;
' N5 e3 l3 K! ~# s, yimport swarm.defobj.Zone; - \7 x/ f2 j: V' c
import swarm.Globals;6 i* d6 G" T8 r# M9 h& R
import swarm.Selector;; }$ E2 p/ o2 q# z3 B' y' ~
import swarm.activity.ActionGroup; 8 K3 X6 t) K5 f4 n. |: @  Q
class Agent {
: U1 r7 f- H& B        char id;
- g4 T& I, ]) [* Z  ^; g( e! f9 j3 O6 @9 Z/ N- x, G9 o
        Agent(char id) {8 @" C4 N" G3 e$ ^. f; ~
                this.id = id;2 E' a" c: A* ~5 P% g0 X# l
        }
0 ?3 Y& p+ V- m7 T& Z+ [) ]
( U, G' i" c+ q/ R0 v; h        public void agentStep() {( k9 `6 ^/ d* W6 _5 |# L6 r- l
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 e, q8 P" G% n: h+ ^( F' p
        }
- o' `% d& A: q' Y4 N}
7 V3 b! `+ g, ~3 E
/ j' A- a5 X/ `1 @5 a+ Ipublic class ActionGroupDemo extends SwarmImpl {
  [; Y5 F' e0 E. P' R4 R/ p/ H# y6 C8 n9 Z        ScheduleImpl schedule;
. F  l2 i2 k6 U; q9 S+ B        ActionGroupImpl actionGroup;# j  G1 Y# G% ~9 R/ G2 A7 N8 n% C
        ListImpl list;
& W) t! h# _/ a' F& i, Y        char Id = 'a';
& G7 u3 d' X; l( J) K/ J+ ?
9 s0 D7 ~& W3 T* o' J2 d; w3 h        ActionGroupDemo(Zone aZone) {7 Z1 h* A# }, e. ]
                super(aZone);
) b( W. B" \- s                list = new ListImpl(aZone);* a/ _) L# |" w. Q# |: f2 d6 l  n
                swarmSetp();8 C8 e0 o$ ^! r2 ~. u
                actionGroup = new ActionGroupImpl(aZone);% s9 [# U% I$ A% K; k% f/ y& z
                schedule = new ScheduleImpl(aZone);7 G  H+ \1 I1 W' v9 o
                try {6 T% ~# J9 v& }
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 g1 B" z% g" \- f3 y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( m, R' [- g' m, Q* j                        ( x, N9 l8 Y8 Z) x4 ~8 n% w+ j
                        actionGroup.createActionForEach$message(list, agentSel);5 s0 I- @; E  b0 j4 z/ f2 y& W
                        actionGroup.createActionTo$message(this, swarmSel);+ m" t1 o( r- u' o4 W' O# }
                        schedule.at$createAction(0, actionGroup);
7 B; x! o) Q8 T) b" M                        schedule.at$createAction(1, actionGroup);
3 u* W  X: [" G8 e7 H, G                        schedule.at$createAction(2, actionGroup);% |' J, O$ Y! r0 R1 \
$ l5 H6 H8 r: G) c( d7 S3 a& {
                } catch (Exception e) {
9 E1 R% q$ @( M6 a. f+ x6 }  ~                        e.printStackTrace(System.err);
4 ?) @7 I, W, V  D/ J, ]0 E  f                        //System.out.println(e);
$ t# G" H2 f* K' `! y+ ^                        System.exit(1);+ O( f; q. g0 ~
                }9 X( F, ^8 f) i! z* Q; e4 g" R; P9 @

" g6 ]0 f2 s- v- j, [$ t/ @- C5 A$ c" [/ _9 p/ ?( A4 Q% N
        }
$ a' |8 x% Q0 K' r. k2 t, a# Z; v" \5 Y2 s
        private void swarmSetp() {
4 S7 i- X* R" ^0 S3 Q+ ]$ i                list.addLast(new Agent(Id));
& [# ~7 @. y8 o7 u' j# Y7 n" S$ i" k9 @                Id++;# y( O% l  y: _
        }
7 Y% E+ R; ~" S9 r' A3 h5 w" s
5 @+ J( y, i  A  Q, x$ K8 W8 U        public Activity activateIn(Swarm context) {
0 `9 i5 o9 W0 X8 V, G# I3 B                super.activateIn(context);& B: b. F% t4 T% _& Q3 r
                schedule.activateIn(this);5 \0 w' a) `( U0 d, m3 U& h
                return getActivity();
& j# B6 `5 M. l# g6 K2 `        }
( J5 J9 ]7 F" s  j' B' n; U4 F! t2 z& u  O
        public static void main(String[] args) {
4 q/ _3 s/ C0 c                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( U/ H7 m# Z, [8 C( t, u                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 Z; I2 W4 N9 w6 Z                swarms.buildObjects();0 f% V4 `% B0 Z) o& b/ q: \+ y
                swarms.buildActions();6 a! W8 s9 j0 ?  K8 x0 z
                swarms.activateIn(null).run();; ]% H' z  V, }9 ?2 Z4 H! ~
        }
. S5 e2 e: f  y% J" p$ h+ k# u
( G! G* \! m/ _5 h! T3 \& t+ f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-16 15:31 , Processed in 0.024043 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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