设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11912|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 2 J: X' h: G: ]5 Y' y( o
, {% F6 U) C9 I9 l& v8 p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, o* N& ~  f4 I# r3 @8 t以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# E; D- \# p& n2 y* Nswarm.SignatureNotFoundException
% A& u$ h/ }& l2 b7 L2 X3 p  X        at swarm.Selector.<init>(Selector.java:76)
& d: [9 W% H: W: R8 Q" i        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! p* z8 J) T& X# P& p0 F9 ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)" [: [) L8 {7 g/ ?% V/ }2 |& C

0 W  a& u1 o& A" A  D1 V; J
% m' s7 J/ [8 f/ l: [2 |% eimport swarm.objectbase.SwarmImpl;! C+ m" }, V1 @5 a5 W( X
import swarm.objectbase.Swarm;' K6 J2 x( s. g) E
import swarm.activity.ScheduleImpl;6 i: s' e( @7 C# Y4 z
import swarm.activity.Activity;
! F! g) f# K- Q+ E, J9 t8 limport swarm.activity.ActionGroupImpl;$ V3 D6 G8 ^! n( i, k
import swarm.collections.ListImpl;
$ W. K/ e& j, F  ?9 p) nimport swarm.defobj.Zone; 8 H* J& d: [* ?; }
import swarm.Globals;
7 e* |! o1 ?" ]0 e- fimport swarm.Selector;
0 _5 }2 i9 I9 Oimport swarm.activity.ActionGroup;
2 h- n/ O- T4 r- Wclass Agent {* W- E( D& [. S0 g8 i" T
        char id;' i* c. w* j. V5 y8 G* |$ V
* Z# b0 v/ ]4 T/ D" I2 g, Z
        Agent(char id) {/ j9 H& |* c- |' G. Z, R4 b
                this.id = id;1 b' `: c  H$ F# H) }; J" Z
        }
5 Y1 e. A: K$ i+ H. s" R* ]! O
; {9 ^; _5 m5 c" o2 y        public void agentStep() {8 Q- q& Z. P4 q' T* i$ c
                System.out.println(id + ":" + Globals.env.getCurrentTime());
" \# E) o# Q+ _7 v3 Y        }
2 z# @' H$ e5 S/ t& [3 h}
# O# x8 C2 j1 l) x' s9 G4 L4 F/ M5 b) K" P
public class ActionGroupDemo extends SwarmImpl {
/ S7 v0 [, S5 X3 Q        ScheduleImpl schedule;8 O- P& i) }5 [1 `$ u0 H/ |
        ActionGroupImpl actionGroup;
: R5 {" z( j+ q8 l) d0 p        ListImpl list;
2 j6 K% j- I* b2 y        char Id = 'a';3 J7 j! P+ [) }

2 x5 y8 n6 O! B' M' F        ActionGroupDemo(Zone aZone) {
' D4 }2 g. x9 T* }) B9 x! `                super(aZone);
% p- ^5 h5 l7 R& [                list = new ListImpl(aZone);+ u+ _* P1 m5 n8 {' W' t* `
                swarmSetp();
" x: Y. H9 }2 u2 G, Y( M8 x                actionGroup = new ActionGroupImpl(aZone);% Z: H$ `$ _! _% [9 u0 \8 d- c$ K
                schedule = new ScheduleImpl(aZone);
: `" Q7 b2 N( u5 Q8 U( E. y                try {2 k5 J8 M- d6 d6 V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 p: \  W$ S. |4 Y' ~                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: m$ L0 C0 d) _# ?6 h                        
8 ?- @! |  `9 o$ `# G4 F, I3 J$ F+ s                        actionGroup.createActionForEach$message(list, agentSel);& V9 E9 k' o) C9 o* U6 s: h' _
                        actionGroup.createActionTo$message(this, swarmSel);# c, @) I1 n: W0 O
                        schedule.at$createAction(0, actionGroup);
8 ~* Q4 o! m0 `7 _; q8 e$ o- r) _                        schedule.at$createAction(1, actionGroup);' w* F! h( |. x6 k) N: l3 d/ H- O
                        schedule.at$createAction(2, actionGroup);) E1 A9 W* U' p9 B9 Q9 H
1 h  }3 M5 g7 Y6 J
                } catch (Exception e) {
3 v  d6 @. c5 A2 c3 Y- x* m                        e.printStackTrace(System.err);0 A" E# V8 K2 K  D
                        //System.out.println(e);
- _, O9 m  `. n0 s, Q! S                        System.exit(1);# d, G% I1 j4 R( p. s8 Y: N
                }
7 J5 b' ?1 z8 n! o( D* z# ^1 w: q% {+ x8 B9 @6 L, ?
+ T3 L) z7 t; o, a& Y0 {/ n; j
        }: E$ i  P" F& [
) q. z8 w" m7 o' I% ~) W" P1 ^+ m$ J# e
        private void swarmSetp() {
1 C/ o! h$ r. Z                list.addLast(new Agent(Id));+ r& F& f5 ^) y2 _7 L2 g8 D
                Id++;
$ P( ~" K& C  o3 r        }
' s; v8 o) ?* z. G: o( P8 E7 m) B7 I* P/ W. v
        public Activity activateIn(Swarm context) {( v+ J3 G5 R& Q
                super.activateIn(context);
. E- o5 f0 ?1 D$ d7 I                schedule.activateIn(this);- L+ u  `2 q1 r- T' j
                return getActivity();' z2 B1 Y, @6 o, E5 u( q% M/ N
        }
( `: a# s3 B+ ?# o/ b8 h( Z
% ~+ u8 w9 p9 ]/ P" b! Z: @        public static void main(String[] args) {- R; u6 U6 T4 L
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& j. ?" r. ]; q0 H) }8 j0 _
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& _$ A6 o. P2 i% k
                swarms.buildObjects();
; w# n% }0 q2 @4 _                swarms.buildActions();
. }* S% a6 H8 r8 e- y( C" z0 K& _                swarms.activateIn(null).run();* T: }: N; u3 `; _, u
        }8 b- A2 G/ |, w1 \; X
, ^0 {" Y' s5 X. @3 f. Y3 ?
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-25 12:28 , Processed in 0.015111 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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