设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10773|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 q3 j' ?2 h, t0 d
/ V/ N# k8 i) F- x! l% D! Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
5 f' K6 ^4 W2 x2 k: a0 y以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ M) f: V$ m, y
swarm.SignatureNotFoundException! ~3 H) k5 j1 r
        at swarm.Selector.<init>(Selector.java:76)
6 T, V! W/ G$ r. _        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)9 _  t- b- W. ]
        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 \* E6 ]$ P3 R8 c7 Y. y0 u* }- P

; \) w) M# _0 W3 K' W
# E& n7 N: j, J: v# Q) o1 bimport swarm.objectbase.SwarmImpl;
( F9 ?& W4 m8 u& q- \; B- f0 Yimport swarm.objectbase.Swarm;6 K6 T+ A5 k( Y% {1 l# g3 h
import swarm.activity.ScheduleImpl;
$ L9 d% W8 P, k% e( vimport swarm.activity.Activity;
" L7 n. _$ r" T- eimport swarm.activity.ActionGroupImpl;
. m. v6 C5 a  p" limport swarm.collections.ListImpl;
8 e' l# y6 B8 Z+ uimport swarm.defobj.Zone; ! A$ w1 \) a/ V; m: \* p# A( y
import swarm.Globals;7 |4 w" |/ E: O2 Q
import swarm.Selector;
9 t  p5 E# S3 N3 t7 u9 z2 R: ximport swarm.activity.ActionGroup; * J6 ^2 H- t1 w, b3 W
class Agent {
1 b: U. l3 I7 c        char id;
; s) I( I. m: a6 H! B' [' c: x  k- y
        Agent(char id) {1 \. N0 p" Q" t( D" E- N/ m
                this.id = id;
4 y3 G- \2 _% H+ P; b        }* ?3 n+ o) u/ U0 l) p3 r
* c/ M/ y$ r6 R- G
        public void agentStep() {4 j3 ^6 Y7 z. U& `
                System.out.println(id + ":" + Globals.env.getCurrentTime());
% ?8 f! j7 o8 o; b# R        }
* `& n; p9 r6 q- M}2 j6 s% ~- j! ^

4 v# t0 ^$ w5 `public class ActionGroupDemo extends SwarmImpl {
" z4 C  H, D% f' H; B# Q        ScheduleImpl schedule;
3 Q3 Y% D+ F6 r7 e& Z4 E        ActionGroupImpl actionGroup;( b& U4 b, D* S. Q3 d
        ListImpl list;! W$ o5 e, B! n4 c$ C
        char Id = 'a';
5 `# f* J0 j8 v$ f! {& ?4 t+ N+ b% R# T: d  j) y) w
        ActionGroupDemo(Zone aZone) {, F  U  d# n6 D( i
                super(aZone);; J6 b% A; G6 S3 |  C
                list = new ListImpl(aZone);
; Z% x& N- T* l# n# N/ i, W                swarmSetp();" [& _) A! r. C" ~0 P- r1 f! r( V
                actionGroup = new ActionGroupImpl(aZone);( S5 K7 M5 _+ m. T  y1 z* P2 B" C
                schedule = new ScheduleImpl(aZone);
  y6 ~8 ^# \  J+ h  L                try {3 X2 {; x  H0 ^0 p7 I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, B8 S% _+ r! \: G% v# _                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, ?6 J) ?3 o2 r9 F6 H  E! A
                        . i; ]7 H) `, ]- r# D. f
                        actionGroup.createActionForEach$message(list, agentSel);
, ^6 Y$ `2 u9 W$ n5 O. m+ A                        actionGroup.createActionTo$message(this, swarmSel);
  q% Y3 R/ K! |3 z% U) Z9 I: ^                        schedule.at$createAction(0, actionGroup);
, T" i% R9 w0 T& P( B  I' t: O, r                        schedule.at$createAction(1, actionGroup);
/ U0 A( ?. r& o                        schedule.at$createAction(2, actionGroup);) u4 q4 z$ |* x# K
7 d& x% p6 Q, }' a1 }, q
                } catch (Exception e) {
8 Y2 x9 j, r! B& }: F                        e.printStackTrace(System.err);
) q: G; f3 q+ i5 ^: l; \& Y( p, ]+ D2 Y- G                        //System.out.println(e);1 F2 x' _& e# Q0 Q* h
                        System.exit(1);
8 a! Q7 h+ ^3 @* M                }
) x" ]0 r/ `& I0 n  _. K, i: c% C$ p. D9 q
" n8 c3 ?& C3 e  P/ W
        }
& t2 j3 o! I3 L/ d$ g6 N9 r) D% T6 C- J6 ?, i% Y
        private void swarmSetp() {
6 @! @" K: U1 _: H; Z( I                list.addLast(new Agent(Id));
0 J7 g2 k6 S* e  p                Id++;
& _" i. \" C6 C. t" I9 Y  M        }# q1 j% n0 U0 J; I8 T. |

4 L6 v1 D9 F7 c5 M0 S3 k' t        public Activity activateIn(Swarm context) {
6 W1 R0 A+ L8 ^  p, S                super.activateIn(context);
/ ~2 I7 Q2 j5 o  n6 P                schedule.activateIn(this);* n5 |; f8 D2 c
                return getActivity();+ ^9 Z& r/ m) E/ h  Y* ^; Q
        }
* H  S7 O% `" s0 i3 Z5 R9 c3 w
! _6 j- Z4 D: J# L: B1 B$ p        public static void main(String[] args) {# {4 h* o% P6 m. Y+ t, x* H
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 @7 c* {9 |8 }) q/ h# ^
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# ?0 t' u) M4 X/ M# x                swarms.buildObjects();
2 J* C' Z6 z: [9 l4 n4 s6 ^                swarms.buildActions();
0 l$ G1 J+ z+ G: e5 m3 {                swarms.activateIn(null).run();3 i5 Q1 E6 p% Q# Y1 r, h7 Z2 `
        }8 d: l- O8 x5 r( J7 t; s! z! F

' e, [) Z  j4 \" r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-23 06:39 , Processed in 0.014098 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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