设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10014|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; U6 }) l0 ?0 V- V8 O$ F
) }! _( z- Y$ f+ B! E# c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; N# I, h* e& G4 `: y( T( y+ J  s0 Y6 e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% e+ o* D3 e' j
swarm.SignatureNotFoundException, k. D3 ?! b4 s" v- R
        at swarm.Selector.<init>(Selector.java:76): _: o' e" `& ?! ^( Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 k) c9 w: i% l8 I        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 y6 a" Q. @5 T- o8 d( r
; q# h( e' w; |2 `9 X/ M+ g2 r9 ~+ y7 }* F
import swarm.objectbase.SwarmImpl;
/ ]! x1 }7 Q  F! K& O2 x5 Iimport swarm.objectbase.Swarm;1 M  g3 r% I& K0 E5 [2 s; a
import swarm.activity.ScheduleImpl;5 m2 Z9 A7 i+ l, T8 f2 W1 w) M
import swarm.activity.Activity;  _3 n6 y4 X- S# o
import swarm.activity.ActionGroupImpl;0 Y9 ~, @. e8 j/ c0 J) `
import swarm.collections.ListImpl;  K' j- I1 D' H7 Y( R
import swarm.defobj.Zone; 2 P* B. W) x2 f
import swarm.Globals;& s3 b+ S  x& ^- h1 e
import swarm.Selector;
4 g' ~3 h& v) N2 y3 vimport swarm.activity.ActionGroup; % [2 i8 W  \+ x  }
class Agent {
, X' C- f* R- _2 N        char id;; v/ s# ^9 U& n3 Y; ^# T8 C- q

- c  H! E& }0 v0 E2 n% c        Agent(char id) {" I7 m4 [, _+ I: ?8 l% f
                this.id = id;2 w7 P- x' g% ~3 n& v) `' K
        }
$ H% j% \, D# L7 {! w- ]0 m" \4 D3 b, G$ m! |5 r
        public void agentStep() {+ l9 H8 x, S1 z1 Q7 D
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 S- A& S# e# s9 L+ F) [        }
( [+ p7 Z  C/ K( m( g- S}
+ {5 {1 c" l5 ^8 t- T, w: n5 ]; h( d7 r0 V
public class ActionGroupDemo extends SwarmImpl {& Q5 T2 J, {  ~2 i# h, v+ |6 R1 y
        ScheduleImpl schedule;- ^% j' |1 h9 t
        ActionGroupImpl actionGroup;
" L( R- b- w, M: p' w/ S  `5 t+ o        ListImpl list;: n: x/ t5 R( v$ `
        char Id = 'a';
+ l6 s& k8 W6 g  d) f2 M
& f3 D) c' Q2 B/ k$ f# C+ V5 k        ActionGroupDemo(Zone aZone) {
- H, t, t# k; `( t- P; k7 c                super(aZone);
# x3 t# S9 M1 W( K+ N/ X                list = new ListImpl(aZone);5 F( ]1 q1 _6 I0 z# H, P+ x) V
                swarmSetp();) @8 b  @3 H( e5 ~0 s4 l+ H
                actionGroup = new ActionGroupImpl(aZone);! F, b4 S# W) `. u
                schedule = new ScheduleImpl(aZone);
/ j. F/ [2 P. _" C+ O5 T; ]                try {
& N; K" w1 m: g& F$ Y5 k                        Selector agentSel = new Selector(Agent.class, "agentStep", false);5 O" f- u5 B. `! J4 l: _9 ~0 {5 Y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, V1 n# e2 R+ |+ K/ W: j. H                        
/ i4 w7 x* f8 U: E                        actionGroup.createActionForEach$message(list, agentSel);# o. ^- ~0 G" H% {( N+ E2 N, D/ G
                        actionGroup.createActionTo$message(this, swarmSel);# n* @# F% o2 {. J" [( @) l+ r
                        schedule.at$createAction(0, actionGroup);
! b3 ~9 X3 C1 e5 p+ M$ Q% f                        schedule.at$createAction(1, actionGroup);
- P7 N0 h3 ?* \6 r  R( H                        schedule.at$createAction(2, actionGroup);
0 B* r) t0 ~, V" |9 t6 u4 s+ I" N! q. s9 k
                } catch (Exception e) {
% E9 G3 C( w( x5 c7 S$ P: P. A                        e.printStackTrace(System.err);: v5 h9 c/ {8 L
                        //System.out.println(e);+ e7 A$ V7 v$ D0 e8 Q
                        System.exit(1);" ]: p8 O7 z1 T0 a" j
                }
+ h' S) ?& Q: m  Z; s; L. k: @7 j5 i) G) n" p  l5 R) {" Q* g" d
' G9 \* D0 Z& l
        }' L& r4 n3 A# i
2 C2 ?$ y4 n( N! K5 q5 w3 g
        private void swarmSetp() {' O, g0 S8 G6 t$ W3 @% z
                list.addLast(new Agent(Id));+ w  m( w) m4 `6 o
                Id++;+ l9 W. A- g; K$ W0 }
        }( z9 Y# l4 w% N1 O. J/ ?
8 n! \3 v& r- n) ]  ~7 s" j
        public Activity activateIn(Swarm context) {. `2 G: Y4 @4 l3 }  n- m
                super.activateIn(context);
3 {2 K( D  a8 i, ~$ j5 |6 w                schedule.activateIn(this);8 n0 K: q0 @1 f; b
                return getActivity();
7 n; I, E/ m8 V4 V8 b+ [5 r0 x        }
8 F' I6 x/ b+ t/ q2 z$ {
1 I  z0 V% z; P        public static void main(String[] args) {5 V9 l7 ]- T  U* E
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
7 [! `/ ~/ S8 L/ m6 J/ v                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 a9 d2 S( a0 E( A: X
                swarms.buildObjects();
8 K! t5 p. @( k7 [: u7 w# O& w  F- _                swarms.buildActions();6 C& q+ b. u4 I
                swarms.activateIn(null).run();
8 V: u/ V6 {; D9 k4 B( L        }
: w% R7 |: ~, R& H! m6 w. C% U) `0 r3 j- Q. ^) V
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-31 16:42 , Processed in 0.011983 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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