设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8299|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 G  n6 B& Z/ J. D2 r1 _: O$ F
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- d+ ^0 j5 o# p
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* O3 Y. I% i" o: _swarm.SignatureNotFoundException
) ^9 T, g2 }0 |, I        at swarm.Selector.<init>(Selector.java:76)
9 X7 D. l1 s. O2 Z3 l2 J7 s! @        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  B4 C/ ^8 d2 j        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 Z1 N! m' n- O8 |( z
. v$ \5 W$ d9 j2 ~. q. `: o/ n+ z
7 K5 S2 P; d, \; C+ y" A& G5 w
import swarm.objectbase.SwarmImpl;
/ w3 g  e+ e' _5 Q% I6 Ximport swarm.objectbase.Swarm;( ^! F: X& H9 F; }. ]% a( S: i7 V; ~
import swarm.activity.ScheduleImpl;
6 V8 b$ o8 d% t* l0 O  oimport swarm.activity.Activity;: F1 z7 d% v* b
import swarm.activity.ActionGroupImpl;
/ S  V3 t7 c; v3 R, Fimport swarm.collections.ListImpl;5 W3 Y" q( K/ g
import swarm.defobj.Zone;
6 q; }" E$ h; [" Jimport swarm.Globals;
$ x0 f4 ?' M# limport swarm.Selector;
  k* T1 A8 S" ~+ a- Yimport swarm.activity.ActionGroup; " z! T9 @$ h6 _0 a6 f. ]" j' c
class Agent {+ ]/ L+ H& p2 x
        char id;
8 X8 U( t6 U! f, Z( }, J
1 D- I1 Z0 ]& r% b  R1 x3 N1 t: b        Agent(char id) {
# z( z0 J3 |- C; t* E1 q! U0 r1 t' u# Q                this.id = id;
+ [) U& t7 n2 `) m- o/ _& F) ?        }
5 U0 b3 s$ B, v) G7 C4 H1 h1 D" C7 _0 {: w1 F
        public void agentStep() {
; g% L) F. W+ D& d                System.out.println(id + ":" + Globals.env.getCurrentTime());3 t, s- D9 O0 m" `- q7 y" ^
        }1 E+ {& Q7 W/ r
}
# ?2 j) K7 u3 R! X# E$ p% R& r. p8 ?# }7 K9 Y
public class ActionGroupDemo extends SwarmImpl {
5 p1 t# P1 g8 ]5 ~4 F9 b        ScheduleImpl schedule;
# g# c5 }# u( @: D0 S5 y        ActionGroupImpl actionGroup;
) y- d& w1 H2 i% B        ListImpl list;
  T5 U+ r3 z( T2 {5 J        char Id = 'a';
0 @4 g# Y  q5 W0 X, E0 {) B
' s0 q" V# i/ n3 q5 Y        ActionGroupDemo(Zone aZone) {" G" y! o  C& j  l( M
                super(aZone);
. Z' V2 e: h0 L  V5 m                list = new ListImpl(aZone);) Z* C8 ~* Y. t, h& H. y6 m" z$ o. q
                swarmSetp();
$ e' q1 {- ^, k( c7 J' Q& Z                actionGroup = new ActionGroupImpl(aZone);( p8 ?/ u# M% ~5 ]
                schedule = new ScheduleImpl(aZone);3 \* K; H' i5 \  p; f$ a
                try {$ \' \* y2 e% B0 g
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 [# c/ e5 G* h  f. T- P, _/ W                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' I$ j( g, `+ i) K  ]
                        
- B  ]+ w7 ]  k/ M  Y                        actionGroup.createActionForEach$message(list, agentSel);
; w$ M" C8 F0 \( [( r) t6 k                        actionGroup.createActionTo$message(this, swarmSel);' b3 c; }# a1 g# _
                        schedule.at$createAction(0, actionGroup);
. N. m. U; y/ v  W% L6 j! _                        schedule.at$createAction(1, actionGroup);' B$ r, k4 V% U4 A2 g) K' ?# z8 f
                        schedule.at$createAction(2, actionGroup);  Q. l& F6 t) H2 T% L; v. p0 n
- E1 F! W' y6 Z: S
                } catch (Exception e) {
$ i4 f" ^" N8 f5 ?+ Q0 a                        e.printStackTrace(System.err);% Y* o1 s, Q3 f0 F2 X9 ?
                        //System.out.println(e);
$ i" ~$ P1 Y9 V! h: S                        System.exit(1);6 T* @. t- Z0 a( b
                }% g+ G: j6 p+ E/ v

2 o3 p3 N- V* R8 l; \# p( T. F. y0 p& u5 n$ U
        }; f& a& k* Q) q) O9 w" l
5 ~4 @) b- F% g9 M  J4 H) Y
        private void swarmSetp() {0 x; p7 b) E1 b/ _$ w1 z$ H. Z
                list.addLast(new Agent(Id));
, F% r# c+ ]0 y+ L- G                Id++;( X1 B9 _# j; {; b6 y" ~' [
        }& C0 T0 F7 W7 Z; v0 v5 o

& k( ]" H0 R/ s0 r        public Activity activateIn(Swarm context) {
5 U5 Z3 y3 _) ^2 [% U- D4 v) b                super.activateIn(context);/ V" ]. T) k4 T% F  |( i4 r
                schedule.activateIn(this);. R$ [2 T! X$ Q9 L6 v9 f0 @
                return getActivity();6 H$ Y4 a9 k7 c* `
        }2 B2 m! t* u6 C1 @. F* K% t

& B8 j9 U: X7 a. C        public static void main(String[] args) {$ q2 ^& G7 I2 _( T
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);3 Z3 _, O' H) f
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, f- `' H: h+ ~/ l4 m$ o, x) Y6 [- K                swarms.buildObjects();( }/ X5 D; l0 u
                swarms.buildActions();
$ W2 G* L- D/ ]) _7 p                swarms.activateIn(null).run();
! n/ V6 B1 F# A5 J        }
7 s) r0 a4 l' ~& w1 }
: b. {: m7 Y  C' A4 ~, i+ {, k3 K}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-7 03:43 , Processed in 0.027088 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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