设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10347|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 6 Q* y: Z" I2 Z; G3 r5 u4 X" d. W: v! Z

2 R" P7 z1 z+ M( D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, Y  _( C8 D7 k5 x
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
0 i8 g( Z: H7 C$ J4 Z2 {# D# k0 h+ ^swarm.SignatureNotFoundException( g+ c9 {& X+ s1 T( I
        at swarm.Selector.<init>(Selector.java:76): ?) y/ M! {, D3 f3 c3 ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
4 _( {4 O- G. U/ Q6 X: h% Q4 e        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ w# B; p$ h  w1 `' \
2 D& f& W* h( l0 O$ U* y+ w, E. j
6 _( U6 v1 d$ e3 a$ _6 C+ D. t
import swarm.objectbase.SwarmImpl;
% J3 S7 w* N+ m- e+ limport swarm.objectbase.Swarm;/ ^1 G; E9 [  _8 l% f
import swarm.activity.ScheduleImpl;* [. y0 X2 H5 q9 p  J7 a
import swarm.activity.Activity;2 K, F' C+ y* P: v  ^) z" h
import swarm.activity.ActionGroupImpl;
8 T9 m0 u/ H4 @! Timport swarm.collections.ListImpl;; B/ t5 J) _' t" F/ A, u
import swarm.defobj.Zone;
. r2 X) P' d, O) k' Timport swarm.Globals;
- `: V; v( g& Timport swarm.Selector;
; k1 P- @6 s* g3 C& Timport swarm.activity.ActionGroup; . k6 R5 s9 W; a4 f; z+ A
class Agent {6 @# {8 `0 L% z0 f4 Y) P8 h: v0 \- k
        char id;
' ?5 h/ D$ j' S: A4 K. \2 Y& a+ o
" y! ]( m0 j3 {% \" l* p) l; W7 K        Agent(char id) {
* n2 u7 x0 s2 O7 G6 O* B                this.id = id;
: E! T% o# K0 f1 U/ |. r+ o        }$ W0 W4 o: q  {% g5 |: |
& ^# d2 |7 v* `1 Y* m' k2 q; O
        public void agentStep() {
/ m% L* W# l% _8 n: X- o1 q2 s7 q2 K                System.out.println(id + ":" + Globals.env.getCurrentTime());
; I6 q3 a! O8 g4 u* i2 x0 X        }
. p# s! W% h: a. W9 s  n3 n}
/ x. o- n. [0 ]% x
/ n  u/ o) v: I6 ~2 ^  Jpublic class ActionGroupDemo extends SwarmImpl {8 y- \2 h9 {6 x# {% w0 |' K4 ~" o% S! c! @
        ScheduleImpl schedule;3 `4 p' q  }2 I: n9 ]- M4 Q2 ?
        ActionGroupImpl actionGroup;
8 |$ ?( p# T% d, j' h        ListImpl list;
8 A; v% B# d) J. D/ S        char Id = 'a';
, ]5 J8 O4 o5 `+ d
$ o% j( h! m4 |/ [+ X; X        ActionGroupDemo(Zone aZone) {
! G8 N5 E( t0 d( l                super(aZone);- c- X& d* h0 d: w* V8 q! t
                list = new ListImpl(aZone);
9 h% |( @8 T, I: A1 ?                swarmSetp();
  B6 h# a0 U. N( b3 D                actionGroup = new ActionGroupImpl(aZone);0 A" V- F  R$ z6 l. \2 [
                schedule = new ScheduleImpl(aZone);
1 L/ E) H9 I% B# j( }                try {
% Y" H: }- F$ Y* T  [: w9 M                        Selector agentSel = new Selector(Agent.class, "agentStep", false);3 K' i' L8 }5 Q3 x1 V3 `, W8 Z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 k# c7 p6 o8 Y4 \                        6 _" M/ R" p% r; G5 b+ g
                        actionGroup.createActionForEach$message(list, agentSel);
* C4 n* N0 S. `9 l* n/ N3 W  t                        actionGroup.createActionTo$message(this, swarmSel);4 l* v' L4 j; R) _: ^
                        schedule.at$createAction(0, actionGroup);
" j& h+ _. `, Q7 k4 R6 ]                        schedule.at$createAction(1, actionGroup);7 n. j% M: o2 w# b% b
                        schedule.at$createAction(2, actionGroup);; S6 F' W5 P! P( P- k! F

4 I" }. U% J, R4 [. t' `                } catch (Exception e) {5 C( _/ ]- X$ I9 d! B  Q0 U, J. C+ U
                        e.printStackTrace(System.err);. j$ D$ ~# n/ [5 y+ R# l
                        //System.out.println(e);
9 ]( @7 n9 z) p8 [9 g0 L& }3 q                        System.exit(1);
- ~- F& n/ \0 {0 @+ z+ V, p                }
" V- s9 v4 W: K- d' K7 `. J4 x- t9 i" H% @$ v( |

! v. r$ t0 U& y        }0 F' H5 h6 H3 S/ R/ E, y, w0 A

3 G& z) [  ^. W3 h  _8 V        private void swarmSetp() {
5 C4 p1 Q/ T$ g4 l! K                list.addLast(new Agent(Id));
  O* D$ |$ j5 M+ a% c                Id++;
0 c2 J9 P' @* W0 k0 F) N8 D        }# h: I! x2 k- [! ]) r4 ]' n
: ?& @  D! U" t" j' G
        public Activity activateIn(Swarm context) {1 v& s9 b5 u& @9 ]+ D. g
                super.activateIn(context);" R" w, d8 ~; u5 }0 ]
                schedule.activateIn(this);* R, E" T: q* R, A" N4 l5 P* n
                return getActivity();' Z8 }  w9 w$ s  X% Y. @( o
        }  g$ _  v! o0 K3 ^
7 q! N; t4 O  v
        public static void main(String[] args) {
' F. Z/ w9 \6 h* ^& x% b, Q# X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" @  a% A1 _6 B                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: B0 G) V3 O5 u/ G; H
                swarms.buildObjects();  \4 y7 Z9 u+ @/ C7 p7 p" ]
                swarms.buildActions();+ Q. a+ k# w9 O/ }5 ]9 f6 H$ \& r
                swarms.activateIn(null).run();* \; o; }, j! T  \8 a: A$ `0 K( y5 I
        }! ^, o9 n6 \0 A: V9 C7 r0 F3 U
' J: E$ I5 F9 Q8 p6 [# {$ N# n
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-11 18:00 , Processed in 0.019379 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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