设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5971|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& ^( b. q& @, Q; v; n, M* X- o$ b6 h5 O9 W- O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. C* }4 \( b4 l; P/ p: F2 q9 ^以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.: m& h% ]9 D/ S0 C  z
swarm.SignatureNotFoundException' A4 ?* @9 E. C/ {
        at swarm.Selector.<init>(Selector.java:76)
( X1 V( n- e5 B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
! N& z* r# H/ m        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 a) V! ^0 K% R7 F
8 ]) x( d5 }4 d# e, q  d( Q! E0 q5 r: D
import swarm.objectbase.SwarmImpl;5 Y$ ~$ {: V' I' H5 O: Y+ e
import swarm.objectbase.Swarm;: s* V6 ~  q. s/ o- Q, W# {
import swarm.activity.ScheduleImpl;8 f/ D% h' a( E* C6 z4 U
import swarm.activity.Activity;
# u0 Q; y. \8 @, J% l9 Jimport swarm.activity.ActionGroupImpl;
! g. ]7 [6 v1 b  G: P# D2 timport swarm.collections.ListImpl;& S! v: u+ G# j+ w; A
import swarm.defobj.Zone;
8 J) J0 ~" t( I- e8 P3 ~- L! vimport swarm.Globals;
% O" L# C5 V+ ]$ X+ timport swarm.Selector;8 P2 H' r5 U7 x6 c: ~
import swarm.activity.ActionGroup; . r) Q1 t8 y, L
class Agent {* _+ X' r4 f! U% q% C% P1 |8 R3 C
        char id;9 V2 v, V+ k/ \2 ^

( x5 a  F% w) i: S, ]4 d        Agent(char id) {
) |, a1 O- R/ q' c$ L3 {                this.id = id;: M6 [- v; y9 C: ^
        }6 X2 C5 l; O6 S2 E: ~
) v" m" J% B% d6 J
        public void agentStep() {
5 ?9 A2 G9 s& u5 b) y) V                System.out.println(id + ":" + Globals.env.getCurrentTime());; M! v7 W' \' D; ^
        }- i! @- ]% A  x  o1 [
}( c2 O* z) q' E/ G/ t  T, ?/ }& E

; W) x: i$ B, T1 s- p  |! Q% rpublic class ActionGroupDemo extends SwarmImpl {1 \' Q2 W% l. P6 h4 ?1 Q
        ScheduleImpl schedule;
5 I1 {6 g1 c- F: r        ActionGroupImpl actionGroup;
& d* p% J, O! k, m        ListImpl list;& k$ e; x: F! Y; [8 h, X# W
        char Id = 'a';) x  ~. M& r4 }: h* q; T5 ^
" o& C* }) `8 Y5 A4 x
        ActionGroupDemo(Zone aZone) {6 `9 F: A4 F# v4 U
                super(aZone);
0 o; d0 e$ b& R6 q. ~( Q' O- m                list = new ListImpl(aZone);
4 [2 J. }( p- x, _                swarmSetp();
$ ^+ C* v% B5 ?  N$ F5 X                actionGroup = new ActionGroupImpl(aZone);
5 @, o' ^% F  N/ c                schedule = new ScheduleImpl(aZone);: E0 [7 M( }. u0 {, e
                try {5 g8 F  K( f# }4 Y8 C2 L
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
' M8 Z  a6 a% J, J' L0 f                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 s5 r- n4 x$ N5 J/ N
                        
: G% b8 X$ N3 N* K2 r! x                        actionGroup.createActionForEach$message(list, agentSel);
" A: o: \: c: J                        actionGroup.createActionTo$message(this, swarmSel);! B. S2 ?; {( Q* G2 U
                        schedule.at$createAction(0, actionGroup);
$ O2 M/ }* m* M. E7 a, f' Z! Z                        schedule.at$createAction(1, actionGroup);
5 z0 f; R1 q: k' w& H" `                        schedule.at$createAction(2, actionGroup);# T) a% o2 t' j6 G# P0 i
0 r! r' {* i$ d, R9 L
                } catch (Exception e) {! x: T' X9 C" x' Y9 m4 S$ y; Y; o
                        e.printStackTrace(System.err);
0 h% a6 s- j) F% r& P                        //System.out.println(e);
+ t" j) J- I: M' I                        System.exit(1);
: g* Q0 j$ X& ]* d8 e. r) C                }
" e; g* J" p1 V$ a3 @0 F% C, q/ J3 N* T

& k9 c4 c! }5 I5 C0 s! z        }" d& c1 i5 e% A5 A( M& a: d% d$ L: V
. t# W4 ]# r; M. i9 F) Z
        private void swarmSetp() {
8 v( ?8 n+ V  M2 x                list.addLast(new Agent(Id));
+ _, C- }( ~4 h/ N2 M                Id++;
8 a1 R% P; J# Z/ O) U        }
! g: n* u0 y7 w# C. a, z" y" D$ N7 _! s- C7 b8 J
        public Activity activateIn(Swarm context) {+ W3 k/ L* v/ V2 D# u0 T" y* S' e' n
                super.activateIn(context);* d, E; F6 a6 D
                schedule.activateIn(this);
- y# x0 p. F1 w; d3 K. k, F                return getActivity();
3 ]4 b% F- {. ^# U* b        }6 ~6 O0 h' d4 W0 v- [& w& y, E
8 E$ R# [0 l4 M- B6 N. E, {3 x
        public static void main(String[] args) {
4 o- a- d2 [5 l                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* n1 t: a: Y# R9 \2 g7 m
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 @" r5 ^, n6 c2 k                swarms.buildObjects();& \4 U8 l0 l2 S3 A
                swarms.buildActions();
% q9 T- J6 ?1 w2 V, _! Z6 r4 Z5 Z+ O                swarms.activateIn(null).run();7 R' r$ F4 E1 F2 W9 g% L5 G
        }  S5 F( [) g" q& ?3 g
8 R( K8 d2 C) K$ R$ }* i* R# _8 K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-12 15:07 , Processed in 0.026245 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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