设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6523|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # y/ h( B+ W9 t  B: _4 u" ~0 y

" A4 p5 }  A5 K( R本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 N! |( J# @" t* Q; o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 O7 D0 c! ~: {; r% u/ R& ]: N
swarm.SignatureNotFoundException# C- d6 e( }# u7 b6 h
        at swarm.Selector.<init>(Selector.java:76)" r) x8 J' I$ N8 y( j+ {
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 k) M& a0 \/ u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)( V+ O- {% S+ v& `5 ]  J4 U+ X+ \
( b( ?4 e5 m) _
* T" x  d, B' \1 ^3 J: Z# f
import swarm.objectbase.SwarmImpl;
2 n/ p, n. X) Y: U  Q/ T* T  {- @& e8 l6 Jimport swarm.objectbase.Swarm;
- R/ I% w# ~8 l5 `/ D) [, t5 Oimport swarm.activity.ScheduleImpl;
# c. e0 k/ Q+ ]2 b8 Kimport swarm.activity.Activity;5 a* I, }3 N! M/ c
import swarm.activity.ActionGroupImpl;7 e% l) X3 [, R8 O; G
import swarm.collections.ListImpl;
% U( x) e# H) O5 p7 D; m6 Pimport swarm.defobj.Zone;
5 w" _( \! y7 ]# A, L# ~% I: vimport swarm.Globals;
9 P5 x9 S$ K- |: r4 _import swarm.Selector;7 Q5 `7 `$ b7 p/ u$ d3 o8 V
import swarm.activity.ActionGroup;
  Q$ k, f% ~! A. `" q  Y+ M8 Nclass Agent {8 j+ z$ s* u4 E9 }
        char id;
; `, \1 @. x  ]" T
! ?3 f. @' {) v        Agent(char id) {
& t+ y9 k3 p0 v5 |$ U( a                this.id = id;: B3 A0 Q3 H+ i+ y
        }7 G: F# A' i- m$ C9 U& f5 s$ I1 ^
4 e' q$ }' i. f, ^2 q
        public void agentStep() {, }0 y% y5 R& {9 N" H- E
                System.out.println(id + ":" + Globals.env.getCurrentTime());
* O/ _5 M5 m& B8 `        }
2 I1 I2 N- D! z5 H+ g- L, \}" ~+ i; R, d1 t6 C% ~7 F

. L3 \4 ^; t" d, d9 bpublic class ActionGroupDemo extends SwarmImpl {3 O" P5 X! M2 K: t
        ScheduleImpl schedule;
! a- z& B& W6 b( C, g        ActionGroupImpl actionGroup;
& J6 r; P* Y6 t6 ~+ A5 Y1 ?- E, a        ListImpl list;
* U1 K4 y2 A  W7 I. x6 n4 Y: q+ n        char Id = 'a';
5 f' f/ [$ g$ ^+ W) }0 M: |  [
        ActionGroupDemo(Zone aZone) {
4 \7 e, R9 ~7 ^4 z4 |4 P$ l                super(aZone);3 F0 r3 b7 p) a% v: M0 L
                list = new ListImpl(aZone);3 H1 T/ F0 {) t. {9 q
                swarmSetp();
( {" s) w1 b! b0 C. x* h4 z+ a. C                actionGroup = new ActionGroupImpl(aZone);5 ?, @5 N) }7 U& a# S+ m
                schedule = new ScheduleImpl(aZone);9 ]4 U  f  E& i7 s" O
                try {
6 K6 ^, m) o: z. Z- V7 c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  p" k( ~. M' W
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, C1 n8 a  j2 G) \- w/ i$ W' K
                        ; ]: K1 D. W2 d, r9 x! o! m' m
                        actionGroup.createActionForEach$message(list, agentSel);9 T; q- F  j& w( @) V7 [
                        actionGroup.createActionTo$message(this, swarmSel);* S2 ~. @/ W8 e5 j7 j
                        schedule.at$createAction(0, actionGroup);
+ ~4 [7 q% ^" l6 h9 W/ O7 T                        schedule.at$createAction(1, actionGroup);
5 m! H9 t/ l& |& a; y                        schedule.at$createAction(2, actionGroup);
+ _& j, E+ Q" E5 j
9 P5 s3 f" w6 V                } catch (Exception e) {
5 L( A2 W' A% R                        e.printStackTrace(System.err);
) r" `! i' k! w! L3 N& m/ E0 G2 E                        //System.out.println(e);
0 w* T5 M1 {7 s2 z7 L                        System.exit(1);6 u* B9 p2 x  E" ?
                }3 ?! }3 `$ m( K# @! i7 m5 R
1 G, K* K1 b2 ^# g2 \' p! D
5 V7 ]2 {, o# M* H; L
        }, ^# |9 q: o" @! X
) ~0 C/ g4 j9 N4 ~( o7 m6 B  u
        private void swarmSetp() {3 C& H. B. z" H. B+ _
                list.addLast(new Agent(Id));
+ X; q$ V$ c4 `1 n8 G# J8 a8 q* {                Id++;
* x2 R- a) p# W. J& U* X+ W' y  d        }; k$ z4 \; L& x4 `5 K& G5 d
/ e" K7 Y7 X; ~3 T4 E4 _/ u; Z$ T
        public Activity activateIn(Swarm context) {$ N9 a' V: P9 H/ c& w, }
                super.activateIn(context);* g3 Z, S9 t$ o+ F; p* N
                schedule.activateIn(this);) R# k) {* l0 C
                return getActivity();) x" ]9 f$ ~/ e# A( ?) _" S
        }. [/ y3 A  w0 R( M# U0 @# V) E
1 Q% ?% M! V5 n) ]- B% r4 T% d
        public static void main(String[] args) {3 N( I, b1 f4 Q2 J# B
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& a9 B  ]' F; h5 j$ ?& ]4 L                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 I0 {' S1 L+ }, o6 a- P, c
                swarms.buildObjects();
3 D$ K: c* M% d; L                swarms.buildActions();
, H5 g* W5 Q/ \+ \0 l- U                swarms.activateIn(null).run();
5 J6 b% E8 r+ l7 X        }
, i  A& n8 a+ `! m$ s# T
$ j) g5 i! e/ X3 f. \& y* W7 X}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-31 00:31 , Processed in 0.017079 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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