设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6816|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - _- c( Q9 Q$ n9 _- ?2 A. y
+ A) V6 o6 E) Q% B/ W1 U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
; c7 p8 D, G& M3 H0 ?9 e0 U以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 b4 \. O* e  o
swarm.SignatureNotFoundException) U9 x, p- l/ |* n% t+ I
        at swarm.Selector.<init>(Selector.java:76)$ N. \- j+ L# l: s. i5 b
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, C+ J0 b& U, i% m        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 }& P$ L% F* U8 m% n5 w
6 F8 J# J  P1 [4 V$ _% c

& v" U7 V) a( P7 e4 Limport swarm.objectbase.SwarmImpl;
! {) s  d3 P: ^# Z4 [. nimport swarm.objectbase.Swarm;
2 o$ H, V, E) G0 J7 ]import swarm.activity.ScheduleImpl;4 e! p- `& U1 w  Q
import swarm.activity.Activity;: v: M# ^# ^6 N3 A  S
import swarm.activity.ActionGroupImpl;* W- w5 v9 f7 q; C2 M) ], |
import swarm.collections.ListImpl;8 g. T6 B9 X3 m( r9 u  z
import swarm.defobj.Zone;
0 a6 y# x8 \7 y( j- O# Y5 f+ zimport swarm.Globals;7 P; Y" O1 j8 ]7 r8 N
import swarm.Selector;
' _) U& c* k5 ?2 K" D) `* o8 yimport swarm.activity.ActionGroup; # ^1 {7 G8 e+ v: L; Y: i1 Q& X
class Agent {
. M: x2 i1 }/ l9 B% M        char id;9 F8 p; c8 R" [" D5 L8 o- w6 e
0 r$ ~. {) U( y$ }- O
        Agent(char id) {# p( }6 ^$ i2 Q# G
                this.id = id;+ d" C) v% P* X. V
        }& ~; x+ [+ H& o; L9 `5 g; n" Y8 H6 O
2 J. o/ I* r5 k# E
        public void agentStep() {7 g: j7 F# q4 w& B( T) s+ ~8 N2 O
                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 ?3 z) ^. w: s) a        }
. a/ C; \* k) G* |. c! P}$ H) x9 j4 v' ~4 L$ h9 F: C

6 I; e. n, ]1 v4 u1 qpublic class ActionGroupDemo extends SwarmImpl {
3 Y! U  e- @; A/ N$ L* i( s+ u        ScheduleImpl schedule;/ h9 U  s) @1 ^3 b! l! Z! X
        ActionGroupImpl actionGroup;+ a& }; g7 ]' r) c: I1 E& Y
        ListImpl list;* c; z* ~- O; w7 e3 B" C5 @  R' J" @
        char Id = 'a';2 n4 w+ @% X" S! f
: Y2 z" V. ^* Z; O9 S) t
        ActionGroupDemo(Zone aZone) {% ^$ t2 E; x3 o& N, A& ?
                super(aZone);
& E# ?+ H' H4 V+ V9 }( Y/ [                list = new ListImpl(aZone);
/ d* S4 r3 I/ j9 y& L& q                swarmSetp();
4 u& ]3 X: ~/ e6 H                actionGroup = new ActionGroupImpl(aZone);& B- J) N6 Z& v+ x* ?1 S; }3 z
                schedule = new ScheduleImpl(aZone);
1 I- h" A2 B: V                try {
, ^- d2 B; @/ j2 Z( b                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ n' G9 }( O6 A* O. ~7 X- r  i                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ i2 O& ?0 N" Y2 P2 a
                        & [- m1 ]2 I. t5 n  d
                        actionGroup.createActionForEach$message(list, agentSel);) x; ~9 c1 k) H2 `* p4 E5 P
                        actionGroup.createActionTo$message(this, swarmSel);7 k. ^7 \) x0 R0 j4 K
                        schedule.at$createAction(0, actionGroup);3 A" v) R8 O0 u9 G4 J
                        schedule.at$createAction(1, actionGroup);
. u$ b$ R$ w; D+ C3 U5 f                        schedule.at$createAction(2, actionGroup);4 t, P- H  l; y& S/ s7 N
: ^- O  [* Z% h$ f  A' L
                } catch (Exception e) {  M* ~2 U  w+ _6 |$ S4 V5 V
                        e.printStackTrace(System.err);
) V0 O  r* t0 A* T% @                        //System.out.println(e);! @- m* c$ \. F" i% G. C5 K* s
                        System.exit(1);' x: T. f. l# b3 ~
                }
; Z+ q0 S0 B* E6 d' `- t1 a# D9 Q; j

' L. z9 L9 _9 S6 I' A% M! a  d        }, Y+ U7 j8 T$ n# s3 r$ i* O; x

7 M- L$ e! N: Y; Y        private void swarmSetp() {  T$ Q6 [, i- V1 U" p' ^3 c
                list.addLast(new Agent(Id));# }! n' z  S& p5 U' b
                Id++;
$ L+ O! [3 `. `        }% l& A/ t1 B; L* u# c7 ^

# K( V/ q8 X' P6 L) |        public Activity activateIn(Swarm context) {
8 v! T* x7 T; i0 a; {4 x! p1 R0 R                super.activateIn(context);5 X; P& e! n. V; {  d3 z1 o
                schedule.activateIn(this);% n/ x8 ^! V. B+ {& V
                return getActivity();
+ q" i$ P2 Y& J1 e( R, Y2 {+ F        }
' `) ^* u, {  [. a- o6 B: d, W( T- g" ^7 d% ^; K) W
        public static void main(String[] args) {
. ]/ X" ^0 X0 D% I' d. t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: S6 c+ D) z  r& W7 M- \2 F                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% J) P* t; C- }: M) {) ?
                swarms.buildObjects();
" p( P1 D; Z3 {9 r1 i                swarms.buildActions();$ o& o8 I5 O9 L4 W/ C' Z
                swarms.activateIn(null).run();1 G7 ~8 o& t! M7 t( O
        }/ x8 h3 c0 A% p8 o$ _

& g6 W6 b2 H, V) c+ h}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-10 07:54 , Processed in 0.023985 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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