设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5165|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + K0 ?' X, v  u& j% ?' w% M' t
. N0 L- y0 g3 q( o: X7 W/ B
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; S2 G4 f& Z% I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# E* ], Y, f, a' M5 f
swarm.SignatureNotFoundException
$ i3 |6 Q: H# _4 m& e5 G$ C        at swarm.Selector.<init>(Selector.java:76)
" i. P/ {- G: f7 q$ S& r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 L- ]0 K  y  E. [( f. m9 r        at ActionGroupDemo.main(ActionGroupDemo.java:67). H9 n& Q; p  Z" ^
0 q. m6 J1 P; p9 _/ E. S* E/ u

  N6 f+ {; j" {0 g! c$ U& p$ v. @import swarm.objectbase.SwarmImpl;
7 r* q' r! ]( z( timport swarm.objectbase.Swarm;' n) z3 Q" A! j7 X
import swarm.activity.ScheduleImpl;
, Y* m; L3 {( W* W0 @import swarm.activity.Activity;
9 ]6 u- e7 P% _import swarm.activity.ActionGroupImpl;
# q+ q' I( Y  d7 ~: J: L2 cimport swarm.collections.ListImpl;; k/ L' y) Q( z$ W' W, _
import swarm.defobj.Zone;
" H4 R- Z( Q$ A; |) Pimport swarm.Globals;+ d  y  {  z% p9 l; h, `
import swarm.Selector;- A9 e7 Q% R2 `* ~( s
import swarm.activity.ActionGroup; . S! j/ ^- t2 ?! }
class Agent {
: U2 D8 R' e$ Q& C        char id;
# j+ p- @0 |- k* X5 J; T5 `% t% o! e" W% V4 M/ A) A
        Agent(char id) {
) I  S& H* K1 _3 o2 a; c                this.id = id;: U  z" ~$ ]* [: T& X5 T$ s1 B
        }) F* x" b$ `( ^/ n

% C3 F3 k$ N/ q* M        public void agentStep() {# U- J" Q: S: L8 Z$ a9 j) d8 ^
                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 O/ K/ P3 [; r5 m9 i) {        }. m# }  R$ m" K
}% {' G1 \) H; j0 H2 V

+ z) }+ Q5 Q* u5 g2 h6 N1 Tpublic class ActionGroupDemo extends SwarmImpl {
2 v- X1 W# o+ I& `6 R        ScheduleImpl schedule;* M5 g. L7 S" E8 p' X+ h
        ActionGroupImpl actionGroup;
! x$ h: `$ r7 C3 l& n' o        ListImpl list;
, V: w) v( _( Z0 u* M' W        char Id = 'a';
+ O/ X3 Y& h4 q5 D/ e4 M+ e5 ~9 T) G5 @; s! M$ n& j% X
        ActionGroupDemo(Zone aZone) {, V/ y8 `+ j1 h$ u3 v& _3 R
                super(aZone);& A, ^' I2 k, s+ u/ Q4 f
                list = new ListImpl(aZone);
6 F( `5 E' \/ q                swarmSetp();
# q. s0 [) |; T1 f                actionGroup = new ActionGroupImpl(aZone);% L! k2 o3 [) r* Y7 z: f
                schedule = new ScheduleImpl(aZone);
( z3 K" g! A6 I/ L' j4 E' ?  u$ l                try {. K' G- O7 Q* A6 S/ n
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);) |4 l4 }1 w; E% ~2 I  A
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 _- _+ D( b. O$ i                        
% _) O9 K' L+ }' E                        actionGroup.createActionForEach$message(list, agentSel);
, S& m0 J( U: S4 a5 T5 _! a% m                        actionGroup.createActionTo$message(this, swarmSel);. I# P! E* u- X. G1 b/ _
                        schedule.at$createAction(0, actionGroup);% P2 S& ^7 t& d6 o& ^' c
                        schedule.at$createAction(1, actionGroup);% c; ~* \2 K/ O) N* c7 u- J  l
                        schedule.at$createAction(2, actionGroup);- o6 v( [3 X6 Z# D  E' X

, B& ?7 a  {9 I* y& q; P* x  q9 O                } catch (Exception e) {
& b! v+ r  a) J$ H; y. `                        e.printStackTrace(System.err);, r8 o8 Q- K6 c2 M1 }6 }+ ?# b1 P4 S
                        //System.out.println(e);6 n' |9 l! s7 H8 ]7 f. E+ B5 R
                        System.exit(1);
; x, Q, F+ @( n" r" ~. \                }& S/ `. M3 U. o' u3 a7 N1 d
& y/ Q8 E' c( z  G" V" R
# U9 F! o* ^$ y: J4 R& F; z  _
        }$ d' ], X) y) N* k
; T& S; x, e0 }: a2 f0 P  K
        private void swarmSetp() {
7 z4 n7 D, e6 s# S- E, V                list.addLast(new Agent(Id));2 p- D/ E  J0 d) V
                Id++;: ?/ N4 w5 f# |( C5 x2 B# E0 }9 L
        }3 @5 D6 M, z3 J/ `4 _' K- ^( O

+ g% @5 \9 p$ |! `        public Activity activateIn(Swarm context) {
7 {" F2 f* [+ ]9 V. C& ^                super.activateIn(context);6 b; y: v4 \+ x8 Z
                schedule.activateIn(this);
4 A* H5 X) N6 _; O) Z3 ?                return getActivity();* U  p* e5 \6 R0 a1 ~
        }
  H; L1 M) U! b, p1 y0 h* F
! K$ r' ^+ u7 ~1 W        public static void main(String[] args) {1 Y+ G& h% P! p& ~' d% ~6 l# U
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
, r# e6 [* U9 \  W0 P9 d9 j" Y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ n- J7 y9 F/ O! R% ?- ?9 l                swarms.buildObjects();
" l$ Z- Q0 e2 h                swarms.buildActions();" p) v/ V8 T& x2 m3 N/ r6 M: i
                swarms.activateIn(null).run();
: R+ k; ~; }6 d        }3 S% i8 R7 g' y& s# I! f  c
2 h! ^0 b) L, Q; C9 x
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-27 02:53 , Processed in 0.023168 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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