设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9734|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ A% r- a) M" |. Z' Y2 h  i0 f4 I7 k  O6 b9 Z
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 d; x4 {; g+ x5 F以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' r% t. U0 I( U  Y* v, k" y$ O
swarm.SignatureNotFoundException
/ S8 |" _6 F2 T1 ?5 O6 l6 N" x        at swarm.Selector.<init>(Selector.java:76)
7 z/ F6 {7 n& H7 R; Z" _* `        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)$ I" ^0 L/ F, m
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 a# P$ G. |* u* d
8 ~- L4 ]% L/ A6 @: e2 I$ w! V% I& {0 n& F0 C' o
import swarm.objectbase.SwarmImpl;
5 p/ i) a2 q7 c' }0 p5 W5 {import swarm.objectbase.Swarm;0 t- \+ N/ B7 c0 Y; w& @8 {6 ~; z! O
import swarm.activity.ScheduleImpl;  u* X. v) ]! y# l  ^  N
import swarm.activity.Activity;$ b) g; q  I. `
import swarm.activity.ActionGroupImpl;8 L2 }, r$ ~* S  z) n8 s
import swarm.collections.ListImpl;% G: |: V# S8 g8 c- {7 a+ ^
import swarm.defobj.Zone;
- ^% b" D/ c5 U2 a8 jimport swarm.Globals;
  f: h6 ^: F* j" N. Mimport swarm.Selector;
" X$ I/ `+ K1 d  {import swarm.activity.ActionGroup;
# g( T# f% c. d3 P9 H5 dclass Agent {6 H0 e# E. ^$ Y: Z5 F# E
        char id;. X: y: D& R3 n& s5 o

  g+ a' L, c# J8 H1 P6 U$ I        Agent(char id) {
7 y/ a+ k& |0 [) m0 D4 U                this.id = id;4 j' Z8 P$ v1 F7 H3 q7 j$ {
        }
" |* G. ~! {; G" G( T+ S  q- v" T/ f2 y, T5 l' P# y9 W
        public void agentStep() {0 ^* @0 O! u/ W" q2 c4 {( E( n
                System.out.println(id + ":" + Globals.env.getCurrentTime());
6 q5 b+ e7 B! L+ E1 D        }" p$ T' s; N0 @. _( p. H
}
" H; ]  T3 L% ?
' }* m' x5 J- bpublic class ActionGroupDemo extends SwarmImpl {# g+ h. E: }) D# V  W" O' H
        ScheduleImpl schedule;
2 b: }, E, [) |        ActionGroupImpl actionGroup;
' d: S2 j, z% C! Y( S7 d, |1 O6 `        ListImpl list;
! ?9 h/ A" J0 Y; G- e. h/ N        char Id = 'a';
! l1 n7 l6 P3 G3 p0 ^& f, `1 Z. f. ^$ v: m$ ^
        ActionGroupDemo(Zone aZone) {
/ G, `& q% m' i6 i7 U9 E  w- L* ?# r                super(aZone);
1 l- `$ Y1 o6 g! w5 x                list = new ListImpl(aZone);
( E  n8 y7 r+ `4 d3 W  g' z                swarmSetp();4 C0 E# @: R2 U+ x- E
                actionGroup = new ActionGroupImpl(aZone);* U! S% Z, Z9 s9 J! g7 v
                schedule = new ScheduleImpl(aZone);
1 R& c0 q% ]! [( j) \9 K                try {
( q# h2 F0 l. k, S/ V% `                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 s* F4 e5 ~1 X+ F                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, I" W# x3 t4 Y' e" ^% C. a
                        
% n7 q7 x4 ]; z9 {; r                        actionGroup.createActionForEach$message(list, agentSel);; h1 ?5 H; |6 W  S9 v
                        actionGroup.createActionTo$message(this, swarmSel);8 [' ~- l* R. @0 T2 |
                        schedule.at$createAction(0, actionGroup);
2 V% G& r1 ?! s9 m/ q8 N                        schedule.at$createAction(1, actionGroup);
! [! f; v% V1 i! }% `  z* W                        schedule.at$createAction(2, actionGroup);
, R+ ^( ^$ m# n; |$ G. B' n1 c
$ y: I) u3 t, G7 ^5 O                } catch (Exception e) {
: v5 k$ L9 I7 b) t7 q  _                        e.printStackTrace(System.err);: x# U: N& p/ d2 ]) m) n9 f, u/ H
                        //System.out.println(e);. U4 _( U% I& f, p: i
                        System.exit(1);
  C3 B3 {# \# K4 ]* C                }2 D5 G% E- g0 `/ _5 t; ^
* H6 ~; T* ]$ V  }4 q8 {
# ?; v. u  C8 u9 {+ b
        }
: y0 q/ T6 k; x! Q1 g
) K3 \9 l: d+ b3 K6 P' t4 {        private void swarmSetp() {
- o. J; o% x. B$ g& }, X: @* ?                list.addLast(new Agent(Id));
3 x! U; o4 N9 ?- ?6 U# @, D                Id++;
! x* M' @" `7 \1 n, R9 r2 Q        }' i3 ]1 O) `" ]

$ d. b1 d# t# H* {. g        public Activity activateIn(Swarm context) {
: W5 N2 G  u' Y0 V- |3 ^, P0 _                super.activateIn(context);
1 `5 d' V4 w# z7 x) {) H                schedule.activateIn(this);' p' n  E2 T5 j  `
                return getActivity();8 l& j# |4 e/ l4 @0 W
        }
8 c1 l2 a) w% ]% R  s! ^7 q5 G, G9 Z
        public static void main(String[] args) {
4 |. `2 t$ g  ?3 X                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: A8 N* x$ k9 @, S5 L0 B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. C6 B' r, s6 W! D. h! Q/ S                swarms.buildObjects();
) c+ o7 y" X3 m) i% M+ ?                swarms.buildActions();2 u; k# Q- r" N# r& z; B) t( M
                swarms.activateIn(null).run();* k2 K" n3 |! C) M: P. F6 Q
        }
0 d9 z1 i4 A+ V6 }+ a+ D( ~) @$ A/ R3 e, a1 U+ w' M" a. I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-21 04:47 , Processed in 0.017619 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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