设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13669|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 r0 r- z! G+ \9 K
3 a+ q& ?- V; d, c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# ~% T! d3 Q  P% C* J3 B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 _$ b8 P2 u+ ~
swarm.SignatureNotFoundException+ c8 y: P, {% ^& Z
        at swarm.Selector.<init>(Selector.java:76)4 F1 a, H. @6 v$ ?8 r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- c) M. N7 }3 h7 U, }        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. O  P) V1 o3 W  Y; ^
/ G* a# S. s) m
0 f  A  C+ [" Aimport swarm.objectbase.SwarmImpl;
( \1 X' C) E# ~$ a: timport swarm.objectbase.Swarm;
! g9 D6 f) r% f/ @import swarm.activity.ScheduleImpl;4 t1 I" f. K* z% @7 P4 S. T( C
import swarm.activity.Activity;
1 ~# @+ e4 y& w2 H1 X6 p! }import swarm.activity.ActionGroupImpl;
( i/ [& H6 b1 N9 eimport swarm.collections.ListImpl;
6 O5 ^/ H* i& J. a+ v. t) V6 Ximport swarm.defobj.Zone;
7 f5 s: U7 G4 ~6 |* w0 pimport swarm.Globals;
, Z. Y! c# _4 o1 o; {import swarm.Selector;
: n5 [6 [/ k* ^0 P0 J4 ?5 n$ S8 t; gimport swarm.activity.ActionGroup;
: x  B# k) r8 C5 S" oclass Agent {
( |4 a0 j0 i0 O; A) v        char id;& ?- j- k4 D) s  }! J: ?2 h4 k% v
8 d! H4 w$ `8 J( F: u" W
        Agent(char id) {& R5 P  V$ l  \4 x/ B/ E# ]6 K
                this.id = id;
9 x2 U  S7 K9 E& d        }
6 f% u6 y* c7 x9 k+ L2 |1 [
6 I' H7 c0 r  L5 s2 g+ v        public void agentStep() {: b: w5 X0 O5 c
                System.out.println(id + ":" + Globals.env.getCurrentTime());- j- M9 o: t! O2 u1 n- i3 b
        }
5 {2 x6 |/ N9 n, i- W  e}
# m: u5 t% R& ^0 s% v+ a- E3 i4 s% E# l3 D9 i
public class ActionGroupDemo extends SwarmImpl {6 I. J( ?' U/ D5 z4 o% `$ k1 P/ r
        ScheduleImpl schedule;( ?- Y9 |6 a& Y. _1 `
        ActionGroupImpl actionGroup;0 o7 T$ A: i1 S+ f  _# ^
        ListImpl list;/ y6 f# U4 A- q3 t( F6 _
        char Id = 'a';
& v8 ]) n) L: j6 p& l/ f) C% B( ~. Y! V
        ActionGroupDemo(Zone aZone) {$ R: L+ s4 o( ]% E  n0 [
                super(aZone);
  b: s( L/ |0 r5 l5 c                list = new ListImpl(aZone);
3 Q2 P2 b3 H  \; ^0 ^( F                swarmSetp();4 D6 J9 C% c. h' L8 Y; M$ z+ n
                actionGroup = new ActionGroupImpl(aZone);) G! H. B" g8 \9 |$ \8 b/ x! |
                schedule = new ScheduleImpl(aZone);
9 y1 j8 N: G; c+ P( Y                try {
+ k5 F3 T$ S1 A+ M                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 ~  I# H2 R0 u0 W% L/ X+ ^7 Y4 s: [                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
4 W" _/ r9 E' I5 _                        
. I  E7 X- H. H) Y" `; Q7 I                        actionGroup.createActionForEach$message(list, agentSel);" u" K  v9 k& Q) G
                        actionGroup.createActionTo$message(this, swarmSel);6 S2 G& R( m  d3 V
                        schedule.at$createAction(0, actionGroup);* A3 e7 @1 G' M3 K( g+ k9 k
                        schedule.at$createAction(1, actionGroup);% ]2 I6 k+ i4 }' T6 e: _' w
                        schedule.at$createAction(2, actionGroup);
" D; ^0 l: z5 o& h$ G+ ], x% b6 ^+ L3 F$ e. ~1 ^% X# ^
                } catch (Exception e) {
3 Q, q' Y& Z9 B# W) q6 @6 P                        e.printStackTrace(System.err);' t! j) ^. k$ J; m/ ?1 B$ ~
                        //System.out.println(e);
) x  o2 l  v" m                        System.exit(1);
) F. [$ ]  A/ p. L                }0 m/ e. Y8 T# p% {
/ k+ N) c2 `1 D7 Z
( Q/ O) [4 Z. D3 \' K7 {
        }3 q! B. b: c  x) D% e

1 x0 b& Y- Y6 K' ^$ }/ P" @$ S        private void swarmSetp() {
$ C$ |& k: {% P/ U5 Z7 r                list.addLast(new Agent(Id));+ R2 G2 E5 W0 i9 S
                Id++;) G4 C# r1 W5 L% Y
        }
; Q) y( e+ h& p2 Y1 C/ [" |" i# }3 s3 h8 X3 e7 v
        public Activity activateIn(Swarm context) {
' N4 J/ O8 W# a' h8 l1 g8 q7 \                super.activateIn(context);
- U( ]- i7 p) ^6 C, F                schedule.activateIn(this);* a% O' M+ i# k& N) W; G3 l0 ~) h$ S
                return getActivity();% L5 T, w  q* y2 z  a% D
        }9 y5 ]6 R  B7 S) s- c
9 E; }1 E% h; c- E- K2 t- K0 O
        public static void main(String[] args) {* E' d& k. ]$ y" n1 X! @$ c6 C# n
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
$ j8 {* q% W3 `                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);! J5 ~) `" o0 b$ A
                swarms.buildObjects();( S5 `0 F0 H, q9 T# W" R( P# o$ l
                swarms.buildActions();
4 A8 F+ t2 n2 Z+ {                swarms.activateIn(null).run();
. e% H: U3 j& e0 H4 q6 C$ R, x; ^# W        }/ d- o2 Y5 D% c4 a
/ B; ~. s8 q- J: u" N/ U5 h4 x
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-14 05:52 , Processed in 0.014818 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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