设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9798|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: c) X. @. W! y) t; _9 ~5 o* `3 {- \( l, x: e- @! n8 K% q
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) m0 x( b; x# ?/ O. [% M: w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.# B3 C- T# [7 m5 i! V7 y7 `' \0 \
swarm.SignatureNotFoundException
  C$ [6 ]3 t( j5 R1 L2 }: t' b: Y        at swarm.Selector.<init>(Selector.java:76)
# K, B4 T) {3 b, Z% Q. ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
  T2 V" \+ x& Y6 a0 b# R        at ActionGroupDemo.main(ActionGroupDemo.java:67): G% S, V+ h# I
; T0 X$ y8 z" N5 @; R' B# u
( d8 \* Z- Q6 l0 Q4 p9 m. e! g0 [
import swarm.objectbase.SwarmImpl;
& Y# X  X" z9 f3 Y6 limport swarm.objectbase.Swarm;4 h4 ?8 W# w6 U4 l6 O6 F
import swarm.activity.ScheduleImpl;
$ b; V- b+ b; ]- j* }0 gimport swarm.activity.Activity;
* U3 n/ o  a7 rimport swarm.activity.ActionGroupImpl;
* I# f5 ?; ?7 }import swarm.collections.ListImpl;/ p# l9 T" a  N
import swarm.defobj.Zone;
! k! R* l7 B/ u4 M9 ^9 himport swarm.Globals;# A4 k/ @8 B8 s& p
import swarm.Selector;" E+ e8 d6 Q/ y1 k/ t# I3 d  K3 S
import swarm.activity.ActionGroup; " p; O) @* L( E: t% _, e
class Agent {* j. h8 U3 r- f: S
        char id;
: J3 v: e* z3 Y( N" Y& }" }7 J
  ?; I, I% h- ]: s        Agent(char id) {8 U2 \* D! Z! n5 B) U
                this.id = id;
+ d9 s" c; B9 Z  u" ^; {1 i! y        }& T3 ?- b( p$ m4 |8 a$ r; q. b5 O  D

' S- D! O/ h5 I: |        public void agentStep() {
1 P, i8 R2 x$ T                System.out.println(id + ":" + Globals.env.getCurrentTime());
# q/ e5 e: b0 k# E) S* V$ k0 E9 p        }2 ?( P4 e# B4 b* E6 K
}
# Q, b: R; {+ ^
9 u, f/ E. `0 K2 V7 X  R" lpublic class ActionGroupDemo extends SwarmImpl {
% u0 ~' g! D+ _% n) @: g6 }5 S        ScheduleImpl schedule;0 f5 ~0 i1 R1 Q5 B1 l0 T. h
        ActionGroupImpl actionGroup;! W: z$ w5 ?3 L
        ListImpl list;- p( {, f, z, i! `2 q" v% j
        char Id = 'a';2 G# n2 G( Q' h: f( A0 p

% Z+ c: t! P. z. o        ActionGroupDemo(Zone aZone) {9 E' p6 D0 z/ `
                super(aZone);% T, [9 ^# r7 \) {# g) t
                list = new ListImpl(aZone);3 v7 T  o2 p% y& y+ ?3 j- G3 P- Z
                swarmSetp();
- `+ y) {+ A; y' z                actionGroup = new ActionGroupImpl(aZone);. @' Q+ E* V& O& h( i& @, M
                schedule = new ScheduleImpl(aZone);
) u3 L' E" X8 @& ~6 N- N- G                try {
, C. {. ~3 v9 ^6 }/ X9 T: H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( Z9 l+ e% r! x9 x; {6 K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, \, O  A' Z6 \9 r8 k. t                        
) ]8 Z. ~2 `! c* r( S1 W; ?                        actionGroup.createActionForEach$message(list, agentSel);7 W; f1 j( l; ^
                        actionGroup.createActionTo$message(this, swarmSel);
' X! T% l/ ^, |8 W& L( P3 H6 @  d+ @                        schedule.at$createAction(0, actionGroup);
1 K; z: C$ z1 h5 X                        schedule.at$createAction(1, actionGroup);
: Z1 K3 ~% g& e; S+ _& W                        schedule.at$createAction(2, actionGroup);
' `9 ?  Q9 p/ Y1 j5 p9 _/ ~; K* q! X4 e9 b2 ^$ y* ~' h$ j! }- d  ?% _
                } catch (Exception e) {6 h( g( w' X5 R3 z% _+ {
                        e.printStackTrace(System.err);
( ?0 |: M9 F" v* E+ s4 }: l' b. v                        //System.out.println(e);! {( a+ s6 V1 X
                        System.exit(1);
0 k: w0 q4 X+ z2 c/ }6 p: `' W1 Z                }- ^3 c2 p* }! D6 q, t1 E0 w1 y; U

9 \+ b9 w. Q% i& d" p# Y, z: d( v) n0 @; j
        }
4 V) @1 A& q1 W2 o3 U& s  G2 M+ Z
        private void swarmSetp() {/ `: A/ S6 I8 K
                list.addLast(new Agent(Id));
# Z) `- n/ Q+ a/ ]                Id++;
  Q( b# h3 G' {        }
( E. D9 m0 V8 d* H9 I
1 g% |, ~  [1 P3 C: s        public Activity activateIn(Swarm context) {
+ A3 I) T0 V5 _2 y: O! W  \( @                super.activateIn(context);
3 J' u" ^5 w6 e                schedule.activateIn(this);' e2 W- }0 _' ]- Q8 }
                return getActivity();$ s, l  W8 p6 V" N% `) o
        }
9 z3 U* S6 w8 g+ q0 m6 e+ B+ i
. Y: q1 H/ E* q6 \/ K1 L8 @7 ]; T, a, P        public static void main(String[] args) {- @$ r; ~' N& D  ?% t$ |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);' J5 D* H3 I" Y
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 \, @/ A. B  |                swarms.buildObjects();+ I% ^, b( a4 I  v; H$ L
                swarms.buildActions();
' q& o4 k1 Q# X/ f                swarms.activateIn(null).run();
/ O* }3 n/ X# Y5 K! x# Z5 p/ B        }' ]/ d) z/ h$ p) X- m

! |) n6 l7 Z+ V+ h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-23 09:28 , Processed in 0.023604 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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