设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9120|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # C) D/ P% z9 }3 c. M; x: C

) z- I# @) }/ B9 ~2 X0 s2 z! k本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 B. f5 b% k0 y6 ]
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# q/ R! p/ Q# T: l: s! E
swarm.SignatureNotFoundException) W5 ?( L$ k4 z$ z, a
        at swarm.Selector.<init>(Selector.java:76)
- \+ I0 M/ V+ f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 a+ A) |% w) ]8 c
        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 }% H( B7 l  t8 q
/ [5 {( O6 X3 X& O, X1 @

7 \9 k5 x/ o6 cimport swarm.objectbase.SwarmImpl;# F) f  a' D/ W3 F/ t$ U" B, [
import swarm.objectbase.Swarm;4 e! K1 h2 a. f9 w2 B
import swarm.activity.ScheduleImpl;
( R  }* M0 J& @import swarm.activity.Activity;. }' v4 J6 f: c( a0 p& _
import swarm.activity.ActionGroupImpl;. i9 U; {3 ]& a! E. E: l9 g
import swarm.collections.ListImpl;
7 w  o* t- ]1 x  l0 ~import swarm.defobj.Zone;
# C0 Y- K; ?# iimport swarm.Globals;
8 H9 j4 ^) ~3 ]; ^3 S' M% F0 bimport swarm.Selector;- q2 @9 m- ]; i8 y* P
import swarm.activity.ActionGroup;
$ u& p+ R( n& M" K" {! oclass Agent {
  f; W; g1 G: {: e/ O4 T% f        char id;
* |8 }& Q# n- i, p. o9 A- y9 g4 l& c( G1 Q, N# b1 c* x
        Agent(char id) {
% w1 `$ d* F& |8 [2 U7 w8 M                this.id = id;3 V/ T$ B6 c) {, _/ g- b2 K! p
        }
5 ]$ z  q- ~. u/ R. P$ Y5 D, L' d& ?$ {$ B
        public void agentStep() {! V: y" I3 {8 @2 m& M% s+ c
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 e2 y3 m! G; o9 i
        }
7 |6 I& s5 z3 t  @" Y}5 A9 r7 X- @3 w1 Y

. J3 s) T& R2 \* A/ ]public class ActionGroupDemo extends SwarmImpl {
' U4 V5 A. C) Q, T1 A% q* h2 l        ScheduleImpl schedule;
$ r% u8 }4 i# W        ActionGroupImpl actionGroup;5 f) ?9 {1 [. W% U. o$ ^
        ListImpl list;
1 Z/ D/ M; P: ~, c6 a3 n4 p5 a        char Id = 'a';* r% g4 E7 @2 T0 |+ @  @

7 \" x, W1 G5 Y" u1 J        ActionGroupDemo(Zone aZone) {5 P3 O* N) X* j( R  a0 T4 y) l, X
                super(aZone);& G5 N9 A. z" {7 R5 B% @
                list = new ListImpl(aZone);
6 X3 u/ U! g& ~" w: _                swarmSetp();) }* y( M" w- Z8 c% |3 e
                actionGroup = new ActionGroupImpl(aZone);1 Q2 G3 Z6 _5 p/ v! r  v
                schedule = new ScheduleImpl(aZone);
1 f: T' u) m. H' P                try {
% s! t" Q1 y' S: p$ ?- a/ Z                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. d9 V$ S  v( P8 ?! ]. i3 {
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ n; u9 w* L: ^8 F8 k7 N                        
' @3 G5 D7 r( g# x" I                        actionGroup.createActionForEach$message(list, agentSel);
( c6 ]- _5 P3 {- J8 L# a# Z                        actionGroup.createActionTo$message(this, swarmSel);
0 f1 y9 y" j! V4 f! K/ K+ i                        schedule.at$createAction(0, actionGroup);
. q0 r* \% W/ S1 Q                        schedule.at$createAction(1, actionGroup);* i8 ~  p$ b5 T- M4 |1 q
                        schedule.at$createAction(2, actionGroup);4 G1 x0 `/ n- G$ |
. X& }, _! `, n/ _
                } catch (Exception e) {) u5 W, j2 Y8 Q0 p. {% F6 x
                        e.printStackTrace(System.err);
! K5 u4 j) `% j9 _  L                        //System.out.println(e);
% Z) a5 k7 u- ^- k! P                        System.exit(1);
) n; [+ s9 O1 `9 b4 A( ]                }- w% r7 B0 D; J* H
  L" r* C9 `2 ^# D; P

8 d" ~# i4 Z9 G6 T* h) b# o6 ]        }
5 c( g/ S/ J) e  ]7 U  g8 \' `2 F/ d! P0 a. [& W
        private void swarmSetp() {* O4 _( Q, b5 K5 c. k% O
                list.addLast(new Agent(Id));
3 Q5 m% i4 z; h6 l2 F! X2 F                Id++;4 ]% n* J8 d' ~6 o
        }/ B$ Y8 S! M, j. m% t

* q9 K" F8 |* t0 M% L2 t- e) m        public Activity activateIn(Swarm context) {
1 r( ?: \. y; R" V                super.activateIn(context);6 M8 ^% m' L. a1 ~0 G4 y; r
                schedule.activateIn(this);
9 t1 v0 H. U/ X4 E1 T                return getActivity();: C: s4 P1 X6 G  B/ T) x. Z/ D
        }
0 E) s" `& X+ {! j2 V& e
5 ~) R' [1 A8 [0 @0 Q; j/ C# o. _7 V        public static void main(String[] args) {+ `$ O3 v. ]: v" ^
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ I3 F7 m/ K8 z$ t
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) g, ?( v2 K% M+ k4 X9 x
                swarms.buildObjects();6 U- o' |) _1 g1 K7 [
                swarms.buildActions();1 Y2 T' }- ?0 H  n( G
                swarms.activateIn(null).run();' f* Y: P) Z# N4 m
        }
) V4 T. B  Z0 O) w' o7 ^( `! q% V/ j& O# Y# h0 H: Y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-2 01:10 , Processed in 0.015699 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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