设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4860|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
0 K. {, ]- W2 z' J$ \5 h3 X- u6 e) f  b) [# R
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 d- c! e2 i7 }' o. h5 |  B+ p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  k8 u! s4 I( o% v2 n5 g
swarm.SignatureNotFoundException
: I* k1 W- V+ X( |9 ~3 o' s        at swarm.Selector.<init>(Selector.java:76)
: y1 r3 H* ~/ W& `3 x. o7 f        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 F. |% [3 L) @: {% |. b1 t        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 V$ B  B" L' @6 w+ v( {1 U

2 v- X9 P7 ~$ Z& i" z6 T% ?4 J5 T! Y) @9 L2 E- i1 O
import swarm.objectbase.SwarmImpl;
/ I: s8 V3 z7 ~% Z6 Oimport swarm.objectbase.Swarm;
5 v: ^* i! ]% \  S, Eimport swarm.activity.ScheduleImpl;9 x7 K% g* s' v9 E" ?
import swarm.activity.Activity;+ c" o0 I4 n- H5 b9 x# R! W
import swarm.activity.ActionGroupImpl;, E1 i8 j& x" q; Z
import swarm.collections.ListImpl;
) }$ c" X, n7 Z5 M: X) rimport swarm.defobj.Zone;
8 j. R- B  [7 @7 w6 q( F4 ]import swarm.Globals;. }. b) v6 t6 B) E
import swarm.Selector;, i9 G# J! w2 o, R
import swarm.activity.ActionGroup;
" C. `2 a  i' I( O5 g* a% _class Agent {
/ o0 g+ y3 u0 [* v$ r7 h5 w        char id;
! ]3 L/ z& M, H6 p) j+ ?; N0 _0 G! _5 V% A) f+ k3 G
        Agent(char id) {. @8 k' p/ }- {7 }  k
                this.id = id;* \! \& z' I, p. t' ^3 N
        }. |2 Q+ t. i7 v4 J

$ H. v7 ]' h# l2 s) a" w* o        public void agentStep() {( r" K& b5 m% _' z
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) v; J/ l1 ?5 I4 X6 l8 p        }0 f/ F2 R8 e1 k1 Y# ^0 T* W
}
) m: t0 f8 X' Z  ^" F- _
& E7 q6 Z6 u  Hpublic class ActionGroupDemo extends SwarmImpl {
6 r  T7 }0 i9 b. Q7 k9 q7 z1 x        ScheduleImpl schedule;0 M7 h/ l1 k; P
        ActionGroupImpl actionGroup;0 k2 W4 t& e( |+ B$ U
        ListImpl list;. ?9 K% E) u! k. G! B
        char Id = 'a';& e5 K4 h; I+ n' n" ~/ \
; N6 a: [/ m7 B  D& L
        ActionGroupDemo(Zone aZone) {
% i$ D+ o( D) e                super(aZone);
( n3 C) N9 z9 P! a+ Z. f& ]3 F, S                list = new ListImpl(aZone);9 e1 W+ @/ u7 [3 s3 O/ p
                swarmSetp();, Z$ B+ J# A& ]# H2 m( J
                actionGroup = new ActionGroupImpl(aZone);- X1 \1 X6 h& _, L7 \/ X# P
                schedule = new ScheduleImpl(aZone);- W2 ~7 ^" F4 {' q. ^' K' G
                try {% {' b* C9 P1 R  o
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);8 [" S1 h2 N9 h) S: x% D0 E
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. \4 ~! `/ a' A4 Y2 U' [
                        
. u# D' \. H3 M. w9 x6 Q                        actionGroup.createActionForEach$message(list, agentSel);
  Y( g) S2 |2 N* r                        actionGroup.createActionTo$message(this, swarmSel);5 s2 `. g$ H# k! M; `
                        schedule.at$createAction(0, actionGroup);' W$ y+ ^, A0 K
                        schedule.at$createAction(1, actionGroup);$ N7 G$ l3 X6 l; g8 U3 ^1 m
                        schedule.at$createAction(2, actionGroup);3 b% G+ U5 `  |
9 k9 l* P' x' g% K6 \
                } catch (Exception e) {* `4 |! `' y& m
                        e.printStackTrace(System.err);
/ a, M7 ]! d; Y3 m                        //System.out.println(e);
  E, [3 S& e- ^7 C" X5 w8 E) r2 N9 X                        System.exit(1);: ^# I0 R4 X5 W' I' ~( `' c
                }2 P$ o" v( [+ N

9 @  I/ k+ r. g
* W( B" m/ O# p2 F, p        }
8 T+ N& ^9 P5 [
% w- f/ F' r5 D8 R. B        private void swarmSetp() {1 m- @0 h2 ?0 y3 p* R$ k  ]
                list.addLast(new Agent(Id));, \3 N" v  G1 U1 m* J* a
                Id++;
/ s* m8 I4 R3 t0 G# g  v9 F        }
5 X+ I$ s: Q5 s( ?+ J* X3 y
* _2 v' P# B( L# m1 N' S        public Activity activateIn(Swarm context) {! j8 N7 |& W9 r. o! @
                super.activateIn(context);
3 v# u1 X: Q3 s' [0 e                schedule.activateIn(this);" k# v+ a) s, Z# v* {7 w* @
                return getActivity();* W  y8 g5 n( U' o) A8 r
        }
1 g; X4 X$ U$ g; p
$ M4 G- [3 i. Q- X        public static void main(String[] args) {
8 W# N9 a- z2 i/ p: G% X+ r0 k' A                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 j9 f, A. u% v( @5 a% P                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
4 C9 D0 C# h6 j( d3 x                swarms.buildObjects();
& l9 p1 b# f, t$ E  n3 U                swarms.buildActions();
$ G; O# B% o' Z; K6 W' w! ~                swarms.activateIn(null).run();& N6 H- d9 Z- a+ h- c
        }& R' R) l$ A- d" R. O9 I
8 Q) R4 H! j$ `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-15 02:36 , Processed in 0.018323 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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