设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7362|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 p/ ^  Y& i. w/ Z9 s0 R
2 m) ]- M6 v4 e: n/ h# X# n, R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) h+ U- s) R% F) Z以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
" `! ^9 P% E# u5 o, b* mswarm.SignatureNotFoundException
$ S, B, ^8 I' P/ R: I* N        at swarm.Selector.<init>(Selector.java:76)
7 I* ^! [" I6 N        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* D/ U9 [7 r3 J* p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ Q& b, p$ X% ^( [$ p$ A
, m! b4 e  n: Y" ~/ P/ r
& X8 l  ]# {9 [, r. M; iimport swarm.objectbase.SwarmImpl;$ K0 I3 P5 y2 S) _
import swarm.objectbase.Swarm;
! v! q- G3 O: X* himport swarm.activity.ScheduleImpl;# f+ N; [7 @) m
import swarm.activity.Activity;5 O4 q6 f7 }# Y0 A" H: ]4 ]
import swarm.activity.ActionGroupImpl;5 z8 Y+ ^" S% ~- I
import swarm.collections.ListImpl;* [) X5 J" e4 o2 ^! E
import swarm.defobj.Zone;
# ?2 P: i* R9 e" U- {import swarm.Globals;
) q8 L" T/ J5 y: M; u( N  vimport swarm.Selector;
+ j: g6 L/ Q$ B  T# j; |import swarm.activity.ActionGroup; ( K8 [8 N6 y) ^! _7 h
class Agent {
! W3 Y1 X1 P& w0 G' @# m, N        char id;8 A' r; u% B0 V' K5 r: q7 M
  G5 Y- r6 ^; y; g0 X
        Agent(char id) {# K3 B8 `- j$ [- z1 y1 O" N# h# k
                this.id = id;! p! B: |5 D7 k& |4 T* ^
        }
0 _$ e' e* P6 u) |: y# V7 s# i5 E3 N
        public void agentStep() {- V4 i/ x: N1 c' _! m5 ^6 |
                System.out.println(id + ":" + Globals.env.getCurrentTime());
- o1 Q# u8 V- M( _4 m3 z& c+ l% o        }
2 |! C: Z* g7 \; g}7 Z% D( A5 l  G/ F' o7 a% n
& \" p9 h& n& ]+ W8 b0 E2 J
public class ActionGroupDemo extends SwarmImpl {
: U1 a" O3 \8 f        ScheduleImpl schedule;2 m1 S5 N2 c  j9 }0 O. w
        ActionGroupImpl actionGroup;
8 E! @( t' b- J. H7 z! x1 J. Z        ListImpl list;
% P5 O: I- U+ V/ Z" @        char Id = 'a';: `  q) I, C7 m2 E

* o; f3 J- [* \2 y: T- X        ActionGroupDemo(Zone aZone) {
+ q  |7 X) V$ h) R- v% V                super(aZone);, X. n! U5 ^3 |# _! B2 W
                list = new ListImpl(aZone);
$ N# s  J* Q  z7 @4 ?. T% A* V6 h                swarmSetp();
2 R) m. k4 \+ }2 g3 b. j+ m                actionGroup = new ActionGroupImpl(aZone);2 I0 U% b$ i# n
                schedule = new ScheduleImpl(aZone);; Y- s# D- a) F/ @- z
                try {
* V# p5 y3 O  y, g4 Y1 n+ d' E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! a; M5 M" a$ O- D( D( S. U
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
8 i) e! X1 S+ O# h, R6 y                        
, P: W. _) r5 `7 `                        actionGroup.createActionForEach$message(list, agentSel);% ~$ [0 k$ C: b' ~$ ?
                        actionGroup.createActionTo$message(this, swarmSel);
2 v1 a: w; ]. g, ^* u0 Y7 v                        schedule.at$createAction(0, actionGroup);1 Z0 R) {5 s) c/ M  q3 F
                        schedule.at$createAction(1, actionGroup);
* r# J. o$ [/ f  N  `& i+ x                        schedule.at$createAction(2, actionGroup);& ]) S( p7 K3 t6 f- i3 q3 m

5 Q2 o5 S$ I( R, H  k                } catch (Exception e) {
/ i0 c) j0 O( I, G1 A' {$ U                        e.printStackTrace(System.err);
9 f- o+ x$ E/ n& k7 A( r- [                        //System.out.println(e);
8 m9 R" C$ n% R  j) b1 C) E                        System.exit(1);+ Q5 \8 {3 S4 F5 f9 O  a
                }9 Y3 n2 E" f( [6 w: U
2 }$ Y$ y& j  R2 T2 A' a# o

/ f: k9 ~9 w* E6 b7 ]        }
8 c5 O( r% X$ T5 @2 _
" p8 O# D5 j, M5 {/ ]        private void swarmSetp() {
6 q( j; e3 Y! P" i. {                list.addLast(new Agent(Id));
3 [7 l2 W0 U2 D# E6 S                Id++;* x" I" ^8 b( |# M% o4 b6 C$ c  g
        }: m$ s; d- G, Y( i
4 i/ x# O" @1 i# M
        public Activity activateIn(Swarm context) {
3 C: c4 i6 e0 p3 T) }                super.activateIn(context);! T* H& y; p4 h" }) j9 c
                schedule.activateIn(this);
+ Q0 q+ J) W2 h' `- d% }7 L: V                return getActivity();8 n0 U' x! Z7 v# h* g  ]
        }+ t; F+ o( m: z7 {9 e# t
1 ~! C/ [- [4 I7 \9 o  G
        public static void main(String[] args) {/ @: g) @' W; H1 u! c
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; r5 P$ X0 m7 Z+ l5 o1 N                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: W- N+ R* ^# G4 x- \) q! c                swarms.buildObjects();( d. ]" C( x. Z& W/ r0 ]
                swarms.buildActions();
$ ~9 I6 B" f" _. P- P) g( {- H2 N                swarms.activateIn(null).run();
; c' F; [  N, ?9 g. I/ y+ ~        }3 [5 s$ _5 u; B8 Q9 ]3 h

$ T: ?  ~3 F7 X: ], r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-27 23:50 , Processed in 0.023830 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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