设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5198|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - c( W( G! _0 j" p' ]1 {: H! J
% f2 _# I# b- @5 v- b
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( m1 _5 p% l$ A4 c5 ], Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 S; Q& N- ~, s1 {1 U3 i; B+ |$ R
swarm.SignatureNotFoundException
0 w, T, t5 Y: f; y, s/ G        at swarm.Selector.<init>(Selector.java:76)
4 C" P! Q) Y6 j6 H( t        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
. y5 E6 k$ g2 \, p5 o0 |' t        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. s+ e% w" o4 k! W% l$ Y0 ~2 a3 R) H& l6 A0 J
+ @; @  @6 [1 i) q7 M8 k- N, I
import swarm.objectbase.SwarmImpl;
- r8 Z( I( Q$ A2 }; G# ^import swarm.objectbase.Swarm;
) I9 q' @+ N/ \. H" D/ I) A/ }import swarm.activity.ScheduleImpl;2 O# v; w3 d: l: q
import swarm.activity.Activity;
/ S  m7 _  i9 w- Nimport swarm.activity.ActionGroupImpl;( L' N6 n# b4 V
import swarm.collections.ListImpl;! z" Q) M4 M; C: r' U0 C5 O9 I  g
import swarm.defobj.Zone; ' P( K; C% o4 {2 w2 U, ]4 i" p- E. {# N% `
import swarm.Globals;
2 f6 u8 T* n* R3 H/ y9 [0 V3 ~+ ^* zimport swarm.Selector;
7 @0 I( ]# Y) C0 p3 A( Cimport swarm.activity.ActionGroup; 7 l9 I1 d- F' s. M" ?; l) B( o# w
class Agent {! O' m! I' A$ Y2 D2 K
        char id;8 A/ i# r# U( ?+ S

/ t% O* f7 `6 f: X        Agent(char id) {
: `+ I7 D1 U* Y  D. S                this.id = id;
- r7 X% G0 X7 f9 j! F5 v        }) I* s6 F* W* f) l' I! w
6 ^3 s: `' v( F9 ^) T8 k  {
        public void agentStep() {
- `( U% s5 E1 s3 T# Q                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 r$ d& r" e# e$ v        }
5 k' U/ M5 G8 I/ z}2 i. n- _6 y: R% F8 [
8 G) `+ k$ x8 n7 a  ~4 o
public class ActionGroupDemo extends SwarmImpl {
8 ~* |8 p! c9 ]        ScheduleImpl schedule;$ j& Z) Y3 u/ K, c  h
        ActionGroupImpl actionGroup;
. T! K) `! A  }8 X, h7 x        ListImpl list;
7 J- h0 n* v! J0 e4 M        char Id = 'a';2 i9 u+ G8 K3 c
% `" T5 B6 r% k; q: Y5 c! A
        ActionGroupDemo(Zone aZone) {
0 ?" I9 ?$ N$ e' T- J                super(aZone);
/ N" f. x, Z1 E# q& w                list = new ListImpl(aZone);3 m6 g0 U7 I. y$ t
                swarmSetp();
3 X6 j. K0 y: k) |2 E. B$ t                actionGroup = new ActionGroupImpl(aZone);2 @2 M. Y/ f! \
                schedule = new ScheduleImpl(aZone);0 M7 |6 W- `1 I% w* \5 k: k+ g: ~8 L
                try {' q' L9 i+ Y" L* S3 X% Y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);: t" m* s) r6 H, g/ }+ L. v
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. a8 [# Z, v* Q! `6 r3 z7 ~
                        
& B& J, y5 w. ]' q, a                        actionGroup.createActionForEach$message(list, agentSel);
. H. G( c4 @  Y' |                        actionGroup.createActionTo$message(this, swarmSel);
. m' f: {" e1 s4 e4 @0 Y                        schedule.at$createAction(0, actionGroup);
$ s$ m! K  e# m  E/ V6 l                        schedule.at$createAction(1, actionGroup);
' S; |# T* ]9 y/ J                        schedule.at$createAction(2, actionGroup);
3 W# y) Z% F8 T. ~7 O) b* g
; t( E/ ?2 ]. n6 f                } catch (Exception e) {; p: T6 q/ P; D- Q: g
                        e.printStackTrace(System.err);
* m9 \9 X8 l8 e$ n2 n. r                        //System.out.println(e);* F' D+ |% `; x; C, p
                        System.exit(1);
* a( v# u% }# O0 \3 @* ?1 y9 M                }2 }: e4 Q# F/ F( B

# e% \" i4 Y3 l% D& l& q" P
  I# ^6 N! t. g( r" S3 F* i! k        }+ Z1 |$ v  D# t

7 ^! U3 ?: j* N; G/ u$ ^        private void swarmSetp() {# {8 \9 |! J7 F/ c
                list.addLast(new Agent(Id));( f% n1 @* {0 j8 d
                Id++;
9 m+ R2 i5 E9 ]2 y! {        }! N& h- \* i% V" p& S: ?

7 l: t! E0 I! O3 D3 O        public Activity activateIn(Swarm context) {
' I, `4 y- M, @                super.activateIn(context);8 L4 }" \, A  `6 I6 B2 F1 e
                schedule.activateIn(this);
  E- Q& P' @8 l! y5 g6 U9 g                return getActivity();
% e) t6 Y7 z) l2 x: r* Q        }4 u. q( B9 X/ A$ E4 o

8 h# h! z7 h: o: s        public static void main(String[] args) {: [, \( y, D% N1 d- Q5 t
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 D. [* t# P& ^! @: _, y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
) A5 }8 B. R8 _. f( ]- [                swarms.buildObjects();$ f4 O4 E7 o; Q" S. K0 X
                swarms.buildActions();8 j4 H$ g! H' H) f* {$ k8 e
                swarms.activateIn(null).run();
6 ]! n# |4 [5 d: p* S        }
3 S: I" z: M3 y3 u: g! g
" b/ r+ x9 z8 D$ C}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-28 17:10 , Processed in 0.019522 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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