设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9926|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! k+ `& k0 ?. _8 y3 s5 g* `* x8 P9 S8 r1 H3 A. p
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( l) D& m) x3 Y4 b1 }* c0 q" V2 j以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 e5 _' h. {# V6 O" {0 e$ {$ Z( yswarm.SignatureNotFoundException( Q1 V# C' f- V
        at swarm.Selector.<init>(Selector.java:76)
& z% u8 }* A9 W- s, }" r* S        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
1 ]: D6 W/ l, n2 B9 Y" ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! t. Y. L' @4 M8 T( b$ D1 t/ w# u: T
1 v3 ?; r0 Q6 a# S1 G5 b6 a! i
8 r  d, h: P' r# m7 o, ~import swarm.objectbase.SwarmImpl;
) q3 h, d: v, y! C; Uimport swarm.objectbase.Swarm;6 ]8 S; }; C; W# r6 x+ Q" U. W
import swarm.activity.ScheduleImpl;
6 O7 @; |, ?& ?' P" K/ R6 Yimport swarm.activity.Activity;9 t( Q* L0 B% d. }& [
import swarm.activity.ActionGroupImpl;
6 J! N& @: S3 h* D+ Y; R7 u" kimport swarm.collections.ListImpl;$ P" }+ H3 ~7 C7 U* J5 J
import swarm.defobj.Zone; % G5 m1 T: d' o6 F
import swarm.Globals;# |7 l8 Y  A8 i5 `
import swarm.Selector;
* m4 T7 T, ^, `( u. s$ aimport swarm.activity.ActionGroup; ; n1 g5 G' Z7 k
class Agent {
$ W- K, a; j% y) m, s        char id;
: Z4 T( N' V0 I1 |+ O- m" l2 K" g& J% B) T! Z7 e* ?* ?! X
        Agent(char id) {
" G- R+ T9 e2 x$ K) C                this.id = id;3 ^7 K7 X+ i1 S) L+ b6 d, D: Q
        }3 k9 L. l* W- O' H

# R+ X8 E, B; w  _3 I        public void agentStep() {
' t" V5 _2 V$ X: A7 x- r* I                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 b3 {6 }: c7 V' A1 F        }
  w) @7 T$ b" m3 I}. T; t4 }3 x6 [; @+ A  I

4 n9 U$ B' h* g7 K1 `public class ActionGroupDemo extends SwarmImpl {: R' t- J5 r2 k# }& z" A8 A! H9 e
        ScheduleImpl schedule;& x, H/ a8 `) S( p5 D2 d" s$ l
        ActionGroupImpl actionGroup;
- D+ J8 m$ w' l0 Y6 M        ListImpl list;
- u4 q; o2 O/ W* |' j        char Id = 'a';
) Y: {3 r/ C  A* v6 R; _: y+ {# N; t1 M2 w* e) P
        ActionGroupDemo(Zone aZone) {! D7 @& R* ]. B4 h. n( \
                super(aZone);$ W4 Q: Z+ j1 t
                list = new ListImpl(aZone);) H' @- i- f2 M1 k
                swarmSetp();3 L) Y1 C# @6 D! Q0 T* `
                actionGroup = new ActionGroupImpl(aZone);/ B( z! E7 l9 l; @) {" o5 }! |
                schedule = new ScheduleImpl(aZone);2 B- ~8 R% Q/ W  w" z
                try {$ a/ h) v. l- G# m( _
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- }7 S- Q3 b3 ]4 I1 D5 M. T
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- v( j6 w: m. u! Z7 B" A
                        
2 O7 o8 U" T' ~$ r0 h2 d                        actionGroup.createActionForEach$message(list, agentSel);
" \8 r# _" z! J, n                        actionGroup.createActionTo$message(this, swarmSel);
( Z  m9 @8 [% j1 I& x. D                        schedule.at$createAction(0, actionGroup);
- O" V  K- U; _6 S3 d. C0 ?                        schedule.at$createAction(1, actionGroup);
6 {& R; N- `7 K" Z8 ~/ \                        schedule.at$createAction(2, actionGroup);" ]3 x; q; D- g% U1 j4 b9 u$ H* _1 Y
6 K& j* f5 x! ^  I
                } catch (Exception e) {: y) i8 i% c+ U1 T1 s/ m
                        e.printStackTrace(System.err);
& C% U. c! Z) r% S0 x; d0 V4 G                        //System.out.println(e);
6 e) V2 N) s9 n+ ?$ d: q                        System.exit(1);
) o& P. o0 B# z  C3 ^                }, |# f4 o9 `7 J' S$ F% [

( S. a  ~$ u& k, c; g* }; Z6 s0 J$ a, |
        }
2 d5 w# I! `3 U1 F& j. t2 h9 p: F* T7 z% T0 i. @: M
        private void swarmSetp() {
6 i0 Z1 _- ]) b3 E                list.addLast(new Agent(Id));# f" s& U+ b$ N# L' E* e2 L$ T7 S" q
                Id++;0 Z/ J( ^8 G( G; B
        }
/ w* z7 N/ \+ ?4 U! M5 Z/ m: z' A5 K8 `
        public Activity activateIn(Swarm context) {8 @' ?; N9 w  k8 e6 o' x0 u/ ]" R
                super.activateIn(context);, Y! t! L& R4 z; Y/ R. Z3 U% I
                schedule.activateIn(this);
0 y7 G! f' B; v                return getActivity();
( O% @+ q; j; Q        }
+ Z4 y3 i3 M; `. C2 q" k$ I
/ [' Y0 i& S+ O8 K' k        public static void main(String[] args) {0 o+ i- e/ a! q, ^- s. y5 S& s
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. ?  u( M% a* g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. P1 y* ]" E+ H+ F( j, H
                swarms.buildObjects();
5 ?1 B+ S# L, I+ D, f' H% E3 z                swarms.buildActions();
$ \; Q& F( w3 W& d8 Q                swarms.activateIn(null).run();( E: j& }: g" N% {4 o9 h( p  j
        }
* B1 B) Q% C+ R* B
' ]1 y( `! @  p- P3 D+ V: a* u}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-28 01:33 , Processed in 0.015817 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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