设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10704|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 k2 z) s  v9 B; A: ~& D2 r

3 x% U, U6 [- K+ k0 K3 S8 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% N; c7 i6 q8 d4 f+ Q6 C; d
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 ]* j/ S# D& T
swarm.SignatureNotFoundException
! r& ]6 J7 W" `9 ?7 p        at swarm.Selector.<init>(Selector.java:76)
; [2 v+ @/ ?' b7 T! b0 f' c) `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; V$ w2 K- l& k  A2 F, X        at ActionGroupDemo.main(ActionGroupDemo.java:67)& U/ Q3 b, M9 b

3 a# t; [" A# P3 l& q+ @
* S4 z9 v0 I+ R: N* O5 i4 ?import swarm.objectbase.SwarmImpl;( O" t. L# g1 P$ J
import swarm.objectbase.Swarm;
/ C! m: j- H- M8 ~- }% l5 qimport swarm.activity.ScheduleImpl;8 B2 i3 j% J3 A% R; `
import swarm.activity.Activity;
' J, S" _+ a- a$ f& ]) _- k% Limport swarm.activity.ActionGroupImpl;& }4 c+ l4 B6 y# n  L
import swarm.collections.ListImpl;
1 F7 ]+ c9 s7 K4 K3 i% q; N4 K5 Q( Bimport swarm.defobj.Zone; 5 ]1 I% {4 U. ~/ ~0 ~
import swarm.Globals;3 [! M+ x, G( J9 B* p+ }6 K% V2 a
import swarm.Selector;
9 \, j( {* T7 ^6 t+ Fimport swarm.activity.ActionGroup;
+ J7 u0 }" _9 Z* z9 Z+ m! Xclass Agent {
6 v1 @. t: {  w0 Q) W        char id;2 z7 x, k  ?5 q# x+ o8 H
7 n& [$ b1 v1 c+ y# z" P& T
        Agent(char id) {5 r/ y0 `: ~; e: z: f0 z
                this.id = id;3 F! U& J9 H4 G9 x
        }
% m5 Z: Y- B4 I3 H5 _1 q- i! ]+ j  {- j& E$ _" _! h4 [
        public void agentStep() {
, ?5 m+ w4 E3 d2 ^% e                System.out.println(id + ":" + Globals.env.getCurrentTime());
" I2 I; m' @+ j8 v+ t5 @! E" j& I        }
2 o2 u/ S$ z5 S% D( `# q}& Y5 I4 i6 F% d. Q' t% d
4 C. _; w' L+ [" I1 Q8 _
public class ActionGroupDemo extends SwarmImpl {8 x  E) {! j2 _* Y( [
        ScheduleImpl schedule;$ F5 W4 K: I6 r/ l' s& k: G" o
        ActionGroupImpl actionGroup;
7 t: k, ^" Y" J2 l% d- Y- |9 s( z4 h        ListImpl list;
; o9 H, T9 C9 B; ?' L        char Id = 'a';0 s8 \' b( y( F

8 q; j2 L/ E8 t4 w% w% L9 ^& F        ActionGroupDemo(Zone aZone) {
1 H6 }- ?% s' |- e, }                super(aZone);) d/ v7 l4 z: X8 o9 \# K* _7 b6 b. k; Q
                list = new ListImpl(aZone);$ W2 i+ o7 T' _0 @  ^7 Y. ?! V, U/ R
                swarmSetp();; t* f  _8 U( W: e, R& _
                actionGroup = new ActionGroupImpl(aZone);
7 _. {+ ^, a" S                schedule = new ScheduleImpl(aZone);$ V) A2 x$ p1 H: x6 K( N
                try {
1 r* l5 _9 T# a2 Z5 Y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 z: q& U& |( i2 g                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
+ g: k4 q8 P, x                        ' A4 C! H* V( z* j4 v5 j
                        actionGroup.createActionForEach$message(list, agentSel);; E/ U9 k! `! I) b7 y( k) Y1 r
                        actionGroup.createActionTo$message(this, swarmSel);0 i0 l% w( g! t
                        schedule.at$createAction(0, actionGroup);# G8 y. P; ~# ~. K: y2 ]
                        schedule.at$createAction(1, actionGroup);" s( k1 a5 f, O% q( I
                        schedule.at$createAction(2, actionGroup);7 [' _5 c6 H' c! }% Y6 t
2 d" s9 D2 Z5 N( }
                } catch (Exception e) {* M' ]- B) `3 t& e+ `
                        e.printStackTrace(System.err);) Z2 m0 y' I1 y  J# f: G$ T# F
                        //System.out.println(e);
9 y$ ^. T' ^, C8 j                        System.exit(1);
2 E  \% V, n$ ~3 H4 w9 W                }$ K; y& x1 X: U$ Z2 p# A5 D
7 E& S8 i- t4 U9 l2 Y( k7 h% u1 N

9 x# T1 H  ?# z* x7 F' p: j        }
# }. O. V% ^# j3 m- r$ R' X0 B, q' X( r
        private void swarmSetp() {5 x' h# |) D# V* [6 K! l/ g
                list.addLast(new Agent(Id));
& [8 n. r& E; A$ P" Y% i/ m! ]8 i. `* c                Id++;+ n' |% v+ J0 K
        }7 `) @) ~! q* {  G. o& ?

% R- Q, r9 {4 B; H3 ~        public Activity activateIn(Swarm context) {0 i/ N6 ~; o2 ^) k
                super.activateIn(context);6 g$ c2 l2 W+ O  P5 q
                schedule.activateIn(this);/ f& P# Z, c- C) t
                return getActivity();
3 x- Y3 Z: b) W        }. y3 y4 j/ i; P8 W7 z4 F

$ j) w: ]& p0 N: @/ v% D        public static void main(String[] args) {' q* ~* m# c% k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- }  A3 M( N  ?8 s7 Y8 j) d& V! ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);  j7 ~3 ]$ T5 Z- m" y; U' w
                swarms.buildObjects();9 X3 D- F$ c0 D3 _% L4 ~
                swarms.buildActions();
3 _- s# t* |" b% u$ q/ o5 m2 r                swarms.activateIn(null).run();2 f: I! N+ v$ i6 x/ u( [
        }
4 a5 N6 ^  K' w8 W1 H! g2 _9 h1 b  a6 Q, q2 J( L
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-21 04:07 , Processed in 0.015725 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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