设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13984|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 B4 _; S1 a! [

* S. O) ^, r# V: M& [% W+ c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21# I2 U2 P/ V6 S+ G9 l5 g9 }
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 A- V3 D! _$ {  G) H; C
swarm.SignatureNotFoundException; F$ d; ~5 I; c; D; b! R" k, h, \
        at swarm.Selector.<init>(Selector.java:76)6 ]$ q/ x% w; s( K3 _+ J8 Z
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  O- A* T, @& x
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 @5 R9 H+ ^2 q$ O* u2 |
' N# `7 N1 S+ r8 Y/ c6 a
" u# t% p( A# D, nimport swarm.objectbase.SwarmImpl;$ T1 l: M) `: {% n1 P# I
import swarm.objectbase.Swarm;
) n0 k4 g7 l! ~( q4 @import swarm.activity.ScheduleImpl;9 j) R5 y- m% x! @
import swarm.activity.Activity;9 x$ s' L& C3 Z/ O5 n
import swarm.activity.ActionGroupImpl;7 {, [! V- x  Y
import swarm.collections.ListImpl;
5 E2 U! t( `  R, B; U' Qimport swarm.defobj.Zone; ! I! V. @" Z9 b' w/ [7 m* o
import swarm.Globals;6 q- }3 v+ k" j6 X
import swarm.Selector;# _# G- u2 U; `( w3 V. E
import swarm.activity.ActionGroup;
7 h6 H! W; k9 ]1 H: F1 i+ eclass Agent {
, f" Q2 t/ f3 b/ h, C* a/ c; O( B: |        char id;% X/ M2 P( I# |7 j7 ?
0 L) T6 o4 C! f( I  f: ^
        Agent(char id) {) Y" t# {, w8 g: n8 ?+ Y+ u2 R
                this.id = id;, a" S% m7 u/ K' F! N
        }, V8 e9 \& p) K5 W) U

, d+ c9 \" ~" O4 c) U2 V        public void agentStep() {
$ T, ]& Z# e5 E( V9 f! L$ [                System.out.println(id + ":" + Globals.env.getCurrentTime());6 r  y7 F: H7 V9 f+ ~: P  C) P0 c( {! ?. \
        }5 @8 {; T: c, x8 `
}. G- e5 y  R8 H4 E; L6 X

" P* F$ Q# o5 N. |public class ActionGroupDemo extends SwarmImpl {; j* L' ?, Q5 u; D- J) D
        ScheduleImpl schedule;
( w3 X8 I" Z# c: p9 V$ f( D        ActionGroupImpl actionGroup;
/ Y0 c7 }  p# Q8 H) {. P        ListImpl list;3 h& p. c+ [) X
        char Id = 'a';
8 X! u' C: l4 w* W/ s, L9 t0 R* O
        ActionGroupDemo(Zone aZone) {( D  P! H! j( c: d0 \8 W
                super(aZone);
1 R5 U5 E9 @5 d5 D7 {" ?                list = new ListImpl(aZone);
" C1 T7 [# j3 d7 [. a                swarmSetp();
! G* l0 d1 i& V" T                actionGroup = new ActionGroupImpl(aZone);1 s# _8 M% H+ T
                schedule = new ScheduleImpl(aZone);
' Q- z  W& P+ ?% `                try {4 L9 `0 n2 v: j
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);! d  a4 m! c* F- u3 s/ k+ T
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ {5 p; P- |* r2 z0 a" l- ?/ b                        6 K+ E5 P5 o+ S. L& o# T  a
                        actionGroup.createActionForEach$message(list, agentSel);
, j& I6 r* P; w) P! @6 m                        actionGroup.createActionTo$message(this, swarmSel);
0 w" B- [/ [1 o+ c                        schedule.at$createAction(0, actionGroup);
2 A# K+ W- n) f% {. ~. a( i% G                        schedule.at$createAction(1, actionGroup);1 R) I- A* }4 i! i5 W9 V
                        schedule.at$createAction(2, actionGroup);- ]. K1 i+ W+ p8 Z0 D, U

  G8 D% h( }" }* B4 \                } catch (Exception e) {+ D8 g) `$ C% X) Q; _
                        e.printStackTrace(System.err);, n/ p$ a$ ~4 {8 @
                        //System.out.println(e);+ ^. K  p) Y  D- V, n+ {  W
                        System.exit(1);
( K/ }: U" V/ h( c- I1 }                }+ y  w% ~9 n% F5 y0 j
# R" P; W1 V8 ]9 Y5 B
; o" W. H- l  X) e1 Y7 R& j2 r
        }
# {5 H& v# `5 p: ^6 c5 s+ ~" n" D6 w
        private void swarmSetp() {2 n2 c' X) y' R, Q
                list.addLast(new Agent(Id));
; C, w& z! Y( e' o5 x                Id++;
4 ?' ]! D2 ~/ M) u/ T        }
$ b- Q+ o0 L- n! }! j+ K8 h+ Y; y; R# G9 Y
        public Activity activateIn(Swarm context) {
5 y6 I* V+ b3 T( k& w                super.activateIn(context);/ Y  m7 Z3 _2 y+ i( F* e
                schedule.activateIn(this);1 J+ H6 x- i- x8 ]) m
                return getActivity();8 m2 a; m% }0 j# H: R0 y
        }
! Q2 y7 [8 S! ?+ e8 \
6 O; }  f" }* ~5 k        public static void main(String[] args) {/ g; b( J6 I: M6 Z  J. e; v
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);& h" ^& H7 {# V- s8 s9 X' g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 y+ {' K" k+ z5 J# w
                swarms.buildObjects();
' w/ g" {; n0 ?! t3 T2 j1 k3 H                swarms.buildActions();
9 v% Z7 ]: |8 j1 W3 w                swarms.activateIn(null).run();
/ {8 f  g5 R4 c; s+ d8 d        }. V" u2 e! D4 Q2 ^
5 k' G" G  V! o$ z( _; ], `
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-23 20:30 , Processed in 6.511260 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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