设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12825|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 s) h. }- P3 s: {9 U6 h4 V9 P5 s" r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) V$ u  I' Z, T" r$ q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 F* g3 Y2 D& Y% C0 J% @
swarm.SignatureNotFoundException
) l8 t* }2 ?& |& j) I        at swarm.Selector.<init>(Selector.java:76)8 }! I# ^- U% `* Q. ~5 b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 G% a: N) G, @) A- b        at ActionGroupDemo.main(ActionGroupDemo.java:67)( _) A. b5 S$ w+ K$ [# A

0 F3 q# ]/ g, P1 ~$ z# ^8 T
6 I4 [& P4 ]* \: himport swarm.objectbase.SwarmImpl;
: f$ c2 A, N3 S+ Iimport swarm.objectbase.Swarm;
1 Q7 `- O, ^, Qimport swarm.activity.ScheduleImpl;  y1 G! ]8 L- v  d4 z& o. K
import swarm.activity.Activity;4 F; Z) F1 h; V, F2 b' ]! k  s, F# V- Q- a
import swarm.activity.ActionGroupImpl;( n# F' a2 W6 S
import swarm.collections.ListImpl;+ {" |0 d8 P/ u1 K! Y9 ~# I
import swarm.defobj.Zone;
* j. Q9 R8 z- s: R" W' Y- ?import swarm.Globals;* ]  @0 X& h4 r5 i" k; l
import swarm.Selector;* o, Y3 H+ J  ]+ T" r; S. b3 i  w
import swarm.activity.ActionGroup; % f- r. m% e, V, I. r3 U* F
class Agent {
" [/ Y2 i4 ^! E6 O% C6 r9 w. T: i" o        char id;
8 }& k, A5 q: s+ w( B% U. Q$ a1 A' {- }
        Agent(char id) {
3 T. I2 X5 O" \8 X* _. u                this.id = id;
6 V1 o$ }5 m3 p/ z) ?/ i- j        }
4 }2 e  D$ {5 g# \. f' k* F2 T
; _& _0 v# {0 t7 X1 B/ z# E; N1 @        public void agentStep() {
* Q# s# b: B' F& m- M                System.out.println(id + ":" + Globals.env.getCurrentTime());9 }, @8 b) e/ [2 f: I
        }3 `% K) Y; C9 O2 _
}/ |3 G# b& e  v& a5 V; W
5 ?% b4 ?" H+ h& T9 a( v8 J0 W: v1 C
public class ActionGroupDemo extends SwarmImpl {9 N4 c8 z3 f- f2 z% K5 T
        ScheduleImpl schedule;
4 _2 X. a9 g9 z        ActionGroupImpl actionGroup;
* m$ B$ O- O7 p; Y4 \( u        ListImpl list;0 q  \, @* ?! s1 y& M
        char Id = 'a';
; \3 a/ w4 H/ ^4 M$ g' Y* g: T
( y# t0 B4 H; F( \2 w. O        ActionGroupDemo(Zone aZone) {
; X+ \3 y! T( y1 L5 H' d4 Q) H0 \/ s                super(aZone);
4 |( P9 }" ^3 G                list = new ListImpl(aZone);
! L' b- i, g. _  E- p, W                swarmSetp();
  }4 |+ w6 L; @  L8 w7 l/ Y                actionGroup = new ActionGroupImpl(aZone);4 H: F0 }! V& Y( U* X, d
                schedule = new ScheduleImpl(aZone);
) b" X+ i* Z/ d# _8 N                try {
/ p; J# ^( n( ^0 i                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! l$ r) ]. T0 B. X: y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
( v+ O5 Z( h, \2 f% t# `* z                        
8 M8 Z. {4 a. `) e- ]                        actionGroup.createActionForEach$message(list, agentSel);/ z! K0 z- o" V. C. B- W2 D
                        actionGroup.createActionTo$message(this, swarmSel);/ K$ t3 x$ K9 `1 _: M" U8 y
                        schedule.at$createAction(0, actionGroup);
! o7 n/ z+ @+ R* _/ z                        schedule.at$createAction(1, actionGroup);
. f) S; Y* B  `6 x0 ]                        schedule.at$createAction(2, actionGroup);7 g+ F) E% `( @) p+ l

( v) {$ H$ y+ X) Z$ k. v" g9 y                } catch (Exception e) {: s' O" M1 Z* `# _+ S. t
                        e.printStackTrace(System.err);
: H" E2 K0 N1 S  J0 v" Q3 T; C                        //System.out.println(e);% \2 m1 ~5 o+ \. X8 @
                        System.exit(1);1 x) O2 t2 u; o% G2 x9 B+ [1 ]
                }2 I1 X0 _0 o' q8 F  a* U( m
) p  C% l& a2 K- g: {4 L
4 U' m/ h' t) g, g
        }
. o! @8 Q) m* p2 O! x! {8 M2 B! _; F$ Y2 i3 `, K7 u
        private void swarmSetp() {  D$ D' |0 P$ A$ c  p% M
                list.addLast(new Agent(Id));
0 G% F# T% Z% Y6 r- _- W7 \                Id++;
! S  g* s2 E; }: m. N/ e        }
* M8 b" T( T, j+ f
- h, R  c% T, |: [% b9 o        public Activity activateIn(Swarm context) {9 E- g, `4 p' `) ]0 `
                super.activateIn(context);% y9 t, A3 s2 a3 W" E3 d
                schedule.activateIn(this);) Y/ V4 R' d; F2 R& {- Y( E3 _6 X( v5 _
                return getActivity();( R4 V, z: Y' ~8 Z8 r
        }
$ B- C+ J, @: I, Q& w+ h0 h! {9 f9 I+ C) ^" L  B
        public static void main(String[] args) {
+ ?& A/ E& e) a4 J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);( y3 b2 m+ d4 d1 c( r6 Y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% d& g2 [  S( l                swarms.buildObjects();7 G5 P7 S0 n. X5 e
                swarms.buildActions();
+ T; N3 t. s7 @& n                swarms.activateIn(null).run();  O# p0 E$ o9 v
        }
; S% R4 f" ^! |9 b: S+ S0 H" d/ ~; c7 v% @
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-20 14:10 , Processed in 0.017250 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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