设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13269|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ W2 |; w- j/ S4 w" K2 Q8 i

. t8 n" Q. o1 D) W4 ]本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ D% }* q. \$ \7 E- U0 \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 n' b! e: f5 k; U) n" q
swarm.SignatureNotFoundException" |& z4 A  t( _6 }" c$ C7 _/ Y6 u+ X
        at swarm.Selector.<init>(Selector.java:76); t6 K& |# ^( P, z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( ]6 m( O0 N! ~( K+ T; u2 q/ m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 A+ W; f/ [" P) I
* ^" [" y" j; l$ \$ j$ I+ v

% e, T+ U1 y3 n$ B1 jimport swarm.objectbase.SwarmImpl;
4 X/ w. C, O& q! a2 u) Yimport swarm.objectbase.Swarm;" l+ g7 ?! y; j; Y- e
import swarm.activity.ScheduleImpl;
& w9 n. P6 C3 Q) S' simport swarm.activity.Activity;
9 S- J  h/ M! I1 c1 |, W8 nimport swarm.activity.ActionGroupImpl;5 l# ~: E  g( c7 U7 m8 R! T; g* J; H
import swarm.collections.ListImpl;
/ v  r: U! ^( t$ Q9 I9 |import swarm.defobj.Zone;
; |* _8 L+ G+ g; Cimport swarm.Globals;6 f  F/ d" o0 g. N# R( X) x
import swarm.Selector;
8 x5 t6 L& Z8 m# u3 s* fimport swarm.activity.ActionGroup; + q  N# G) |! Z1 M5 J& \7 X
class Agent {" H1 }" I* z% e4 E3 A5 f
        char id;
$ j( P! y5 C; w, s8 R% G, v' s6 o4 Q: g9 M
        Agent(char id) {
& W4 X, D. H( D( h6 m( L6 e                this.id = id;
  ]- ]" r3 K. [1 o, `, d        }
+ _8 H# d6 n- }- q8 ?+ L2 H, g3 A4 b% t+ t; q6 i8 h' B
        public void agentStep() {/ o$ ?: [3 e  o& k! K4 @, D
                System.out.println(id + ":" + Globals.env.getCurrentTime());- w* r! a( d1 z$ E$ n0 Q- B% J
        }
3 z, h* O" v, T& v# T2 ^}
" v% ^' G+ \3 e+ J4 h, d. n7 `% c. \" b
public class ActionGroupDemo extends SwarmImpl {
/ h: A+ ]5 {% j! c        ScheduleImpl schedule;
# w. Y# H! K# n" \, {! P: v; c) h        ActionGroupImpl actionGroup;/ W  \/ j  |4 K7 O, y2 j
        ListImpl list;9 s/ I  b( S3 O; T* w9 V
        char Id = 'a';3 ^$ a6 M( ~: T1 {* ?
, G/ g/ R6 m5 C! X
        ActionGroupDemo(Zone aZone) {, D3 y- G) Y, R- ]
                super(aZone);
$ M) J: ^) B7 ^                list = new ListImpl(aZone);
" G8 Z$ \# _; i8 c9 v                swarmSetp();8 s+ M; r* y* F
                actionGroup = new ActionGroupImpl(aZone);: V4 C7 w, x, g9 g, z
                schedule = new ScheduleImpl(aZone);
+ S1 z7 ~: l: W                try {
; m: u) e7 z* j# b0 O% d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 N) q( W, w3 A: ^, O
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 G! P7 K. a6 v- {/ y, [
                        ! b! o5 I$ d1 W, m0 P) ]
                        actionGroup.createActionForEach$message(list, agentSel);
7 a4 Q" j$ ^1 n4 K* _( d                        actionGroup.createActionTo$message(this, swarmSel);
- q1 x) H8 i; A+ x) m                        schedule.at$createAction(0, actionGroup);% O& h- b, K0 q
                        schedule.at$createAction(1, actionGroup);. N9 m. B8 E" t, E1 b" f; Q7 k
                        schedule.at$createAction(2, actionGroup);
3 m- F: b* Z% r" y! T  X- A
, \  o4 _3 p, m0 `  D& v- g6 F0 V                } catch (Exception e) {
3 a; @, X( t2 }                        e.printStackTrace(System.err);
1 v9 [# ?2 |/ m) I  J                        //System.out.println(e);3 Z9 V" _) @, o  i, }
                        System.exit(1);
% C, k0 @3 [. I) m                }
- c# t" z. w" }8 E
! [' _0 I6 D7 h. f0 i8 @& B. I5 |5 i1 n6 f; }: |& P1 w
        }
: o' Q3 m- l8 ?
8 `$ V$ H" f& t1 d/ Y7 m        private void swarmSetp() {
# p- b+ L0 t. T* L0 c                list.addLast(new Agent(Id));
  M+ `8 E& Z$ H# R9 A+ r$ Z                Id++;8 z0 j. ^7 c* ^, J% T! @) I1 k
        }
7 @2 t9 B4 I4 i. \- x7 q1 Z3 p. F3 g# o; l: M
        public Activity activateIn(Swarm context) {* i3 w- P7 b# O+ t0 j& I
                super.activateIn(context);( n1 x+ q5 ?, O% u+ H
                schedule.activateIn(this);
  l# q) z/ t6 u$ M/ [; J- `6 j                return getActivity();  ^8 i' W% ?, g- L. [
        }
# v; ]/ |0 _4 ^1 z. `: e8 Z# }* R! q  f% _0 W* D/ h8 S
        public static void main(String[] args) {) `6 z% b7 A1 f( t9 Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 m% w( B' q/ F& u$ P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 A$ e5 B' F1 Y) p, G) l                swarms.buildObjects();0 k7 `5 V: w0 B
                swarms.buildActions();
3 ~. Y7 K2 H1 _7 S! d( X) Q                swarms.activateIn(null).run();; F# V5 D! L. x! w& m" p7 d  J
        }: G6 R# h$ h8 |
, V, b3 N  _; i2 r- [. X
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-2 10:50 , Processed in 0.016256 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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