设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11002|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 V9 @! M7 K1 y" p& \% F' r
4 k  Y* f" w. h6 a2 z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! V0 P  f- b& B' q- h/ \$ \, {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 T. N( ]0 u1 ~. r  Aswarm.SignatureNotFoundException
' ~9 W5 Y) Q- _! V        at swarm.Selector.<init>(Selector.java:76)5 f# c9 l+ G, I$ [+ x" j& g; G
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). v- n" t: U$ ^) X- L, ?
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  n' h# Y& \6 `) h9 U! b# x) e2 f+ f$ J% }+ d) x/ L* C  P# x
7 g: I0 ]7 Z, ]& t
import swarm.objectbase.SwarmImpl;
0 O5 E# l, N8 Y' d- nimport swarm.objectbase.Swarm;* n2 @3 ^' J2 S+ J+ ~# r, T# I
import swarm.activity.ScheduleImpl;" Z# P" {: b: k
import swarm.activity.Activity;: |$ ?0 P1 ^7 a4 W* S! C( u# W: P
import swarm.activity.ActionGroupImpl;
6 G2 V3 Y3 _7 t; Ximport swarm.collections.ListImpl;
  r5 s! i! q0 Y9 Oimport swarm.defobj.Zone; 9 v5 r1 p9 s; S: j% Q
import swarm.Globals;$ E. v! d0 Z* H& B7 E8 z' O: r
import swarm.Selector;
( A& m0 G% O" Z  G' wimport swarm.activity.ActionGroup; 0 w* h8 T' t# G4 C
class Agent {( g% b) i/ b5 O" G. D0 j$ z) S1 {
        char id;
! g- Z# D% k7 c! c: P3 `- l! I7 L6 a( N
        Agent(char id) {
& l$ [  j' h% R: C/ K( q7 C                this.id = id;
: |. w& h' |: h' E, b' H        }
$ Q! s& F/ d  c" |$ I. H9 C% @& j' R$ U
        public void agentStep() {
5 X' S' `* ^- D0 z                System.out.println(id + ":" + Globals.env.getCurrentTime());8 L* {- F* e' X/ a) P4 w
        }
; @9 M# q" v/ t( D}
7 I3 j, k& w2 e: u/ C- A2 u) A7 E; {1 X7 Z9 N* O
public class ActionGroupDemo extends SwarmImpl {( R! O) Z/ l, `& u& Y
        ScheduleImpl schedule;* j8 T  f* Y, B6 B, B
        ActionGroupImpl actionGroup;* q5 l+ M1 }$ j0 g7 v% @+ I9 r
        ListImpl list;
. N; o! K# a0 F; N9 ]5 T  P1 _- [  l        char Id = 'a';
  {; w2 ~5 Q* Q- v5 W
  y7 x  |4 S/ R/ a" q$ N        ActionGroupDemo(Zone aZone) {
/ y& k* M3 Y3 X6 f. r0 M. A  D                super(aZone);
. t! V2 |, d! d  C6 T2 `8 U                list = new ListImpl(aZone);1 ?- w6 x9 F/ i4 n! `; N. I
                swarmSetp();1 h( I2 U: s; m
                actionGroup = new ActionGroupImpl(aZone);7 Q  P% b/ M0 ]7 k! o, D2 [
                schedule = new ScheduleImpl(aZone);
* U2 m& m" Y5 p% E8 H2 z( Z/ o/ v                try {
1 N7 B1 F6 L$ P                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 i9 N+ x! v0 m                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ r' @, g2 m, c& s. Y9 V% B                        8 t) X' \2 j5 t$ P
                        actionGroup.createActionForEach$message(list, agentSel);
+ u' x8 d: I+ w+ `% I: \                        actionGroup.createActionTo$message(this, swarmSel);9 @2 E1 Q8 N, m! Y
                        schedule.at$createAction(0, actionGroup);
, [! S. H4 @# x+ L9 Z3 ^. ]                        schedule.at$createAction(1, actionGroup);
& T; z( D) O- C                        schedule.at$createAction(2, actionGroup);. K% p; p* x7 f1 L9 Y3 C
- [; x& q( X2 Y( V
                } catch (Exception e) {
( o$ j' ^8 w2 s; L  S) i- L) a+ S                        e.printStackTrace(System.err);3 I7 u6 V4 ^1 \9 K  Z/ Z
                        //System.out.println(e);$ ^  p' L3 s/ @& f3 }' r% J- r' g" P
                        System.exit(1);0 a" Y( \* P( N8 U5 u1 R4 F/ ?
                }
1 E4 F5 s) s2 p  j+ N0 l# L
5 z0 Y) T3 p; e( H0 S2 |& t$ q; V2 E5 @/ R3 G$ c. S! O
        }
2 q. R4 T1 r  d- C# e$ i6 R  |
3 P: C7 C/ T/ k  P        private void swarmSetp() {/ W2 u+ s1 }2 f4 y7 T/ C3 K
                list.addLast(new Agent(Id));
4 Z' q/ j8 E  ?7 D                Id++;9 ^3 |5 _$ p/ k$ Y! Y8 h  x! E
        }. u) _8 _8 G' ^1 k
) Q3 k; \5 @/ v# t% q
        public Activity activateIn(Swarm context) {
( X6 o( f1 p7 ?; c  z! f                super.activateIn(context);
4 m- H; f$ s3 G6 {* ]/ `& [                schedule.activateIn(this);4 [# a: m- M; T, B
                return getActivity();
& W8 j9 y" w; s" M7 z. X0 h        }
& Z: \5 ]) L! Y3 z' @# ?6 e, q& T) V9 Q  f* c+ \2 Y
        public static void main(String[] args) {
. T1 i8 B8 b3 s' }* H5 m                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ h( y' C! z9 ~2 A' ]; U) f                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* ^5 x" G) r; U; C' C, F' v                swarms.buildObjects();
: g: m6 c% Z' Y& ^9 P# o. w( X                swarms.buildActions();/ g7 g) m8 e* W2 g
                swarms.activateIn(null).run();/ a% j; I! E. o) n* k
        }' _& E" x1 X9 w' h" y3 V! _( B
% R& Q1 c+ c6 S3 {/ X$ H' p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-30 01:14 , Processed in 0.015402 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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