设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13024|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 $ U, a! M2 i: n3 F/ D" ]* g

0 i$ U/ o8 z% a' r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ I' Y) u8 [3 c8 ~1 a以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 Z5 i1 Z+ T/ {# U8 O( M8 J
swarm.SignatureNotFoundException
3 Y& U1 k# O' v  D/ w6 B        at swarm.Selector.<init>(Selector.java:76)8 h+ ?6 K' [% r1 Y/ y: h% |
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)% G! ]; k0 P% L
        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 R# D& m0 H) `* H$ N

" [& W$ n6 T- ^" O; s. V2 \8 ~- j2 t8 P6 {' {+ [, ~, p6 y% |$ h3 I
import swarm.objectbase.SwarmImpl;" z% r( W- e4 {+ M
import swarm.objectbase.Swarm;8 k: d- ~: c6 i; Q5 t
import swarm.activity.ScheduleImpl;
/ X! Q# {* Z4 ^' C; G" c' dimport swarm.activity.Activity;
9 [+ x9 a' C0 }& w/ k- ~import swarm.activity.ActionGroupImpl;# o, s& `+ G$ t3 M" D  u4 J
import swarm.collections.ListImpl;) g. M+ X2 S8 @) Q) m
import swarm.defobj.Zone;
7 w1 y# A) |; \* }import swarm.Globals;- ^: r% Y" J8 n# Q
import swarm.Selector;
6 c- H6 I+ h3 z+ o( U7 k5 qimport swarm.activity.ActionGroup;
2 l2 ]% M, k" ^# R) p/ m" Wclass Agent {
7 p7 V$ a1 \& `        char id;. j4 J9 ]/ q: X# ^" k1 ?
* ?- F9 H! `3 L! _
        Agent(char id) {
& G9 y  `9 z. E" J! \" a                this.id = id;" E- t. I9 ^! n6 g: u" ?
        }' e) L- G) v" e) x0 G  j1 z

6 }0 b7 ]& b5 W/ p" h        public void agentStep() {+ c) ~3 `& s" q1 G
                System.out.println(id + ":" + Globals.env.getCurrentTime());' s; d9 S. s" b- k, W2 }9 s% I- x" a
        }$ f' k. L- L( H& I3 x
}: k% y, I8 W% F5 k
8 `4 f5 J8 s% ]
public class ActionGroupDemo extends SwarmImpl {% l0 r4 }5 s1 R. D
        ScheduleImpl schedule;
3 N" z. q% o1 P* C        ActionGroupImpl actionGroup;
, M( K+ @$ N' s# I5 x$ O        ListImpl list;1 y, f6 O7 R- M6 a$ v
        char Id = 'a';) F4 a* c+ Y0 E& U! k% @

+ L( z* v: l3 [1 k% Q        ActionGroupDemo(Zone aZone) {) N4 |8 ^* W5 m
                super(aZone);
) p4 U9 {1 ]- w7 z* O7 n" U                list = new ListImpl(aZone);
  a% E0 W5 d8 |' y                swarmSetp();) p7 A# v; M/ Q2 T/ b9 k7 u; ~
                actionGroup = new ActionGroupImpl(aZone);+ F$ c* F3 ^! x: L
                schedule = new ScheduleImpl(aZone);$ i5 m; f% e! |# X
                try {9 M$ k. u) d2 a- s1 i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 N2 m' H2 k1 y0 P; z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! S% v9 g3 \/ k& M2 ^( w# q                        3 Y* {( l/ f+ W7 c4 X
                        actionGroup.createActionForEach$message(list, agentSel);
' l4 @) t" L7 Z4 l                        actionGroup.createActionTo$message(this, swarmSel);
, [$ e: q3 y, N; i                        schedule.at$createAction(0, actionGroup);
) E6 Q% ?* o% p5 i% a                        schedule.at$createAction(1, actionGroup);
& V3 ]4 S) [# S; v                        schedule.at$createAction(2, actionGroup);& E2 s* I3 r: e. M2 {3 t
) M7 R4 e! W& b7 T: N* d' @
                } catch (Exception e) {' N6 c) ~1 ^/ q# k' D' T
                        e.printStackTrace(System.err);: a4 I" p) r6 x1 W: U& S! g, o
                        //System.out.println(e);& ?5 N$ W  i+ o4 J; t' I4 Z- V& w
                        System.exit(1);
& k" \( w! e  t" h& M* J( ]                }! D+ ?6 Y% S+ o# q+ A

, _* P2 y& H+ g* C* l9 f/ \) ?! n9 B/ {9 q
        }
& k# Q3 c" L4 {' [4 n. v4 {
0 J3 h3 W0 E; Y; X5 ?        private void swarmSetp() {5 \- v  C( N, A* F- r! E0 w
                list.addLast(new Agent(Id));6 i. I1 P1 p# p- M: F
                Id++;
; g4 z5 I6 M7 r        }
: r8 S  |# k5 \# H9 D7 g# ~1 e1 R
        public Activity activateIn(Swarm context) {
% x! K3 g# D: e( Q- }/ E                super.activateIn(context);2 X: j# Q; u: t% s3 [
                schedule.activateIn(this);
: ~, I! T4 s3 w  ~) r% H                return getActivity();
/ }5 R, R$ z: @# e" ]        }
0 `4 A- n0 u. J: h3 T, P  D; v/ }
# x8 j6 m5 }* ?, z5 b- I        public static void main(String[] args) {0 X( Z4 ^1 F/ f$ _
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ H) g8 g* k1 R: v7 L                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% H5 B4 z8 J: E+ h) x' B3 L- d& k
                swarms.buildObjects();
& a% q( U/ x# D# T                swarms.buildActions();2 V$ l  Q6 D, K/ G) p, i- g7 {; q
                swarms.activateIn(null).run();% }5 A1 B" I' ~2 I; _& w
        }) d4 s; Y+ b) ~# ^8 K& C/ a

; B+ K' d7 A9 f! }}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-26 06:44 , Processed in 0.014775 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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