设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8041|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 Z# n& _- S6 {9 @) N1 K7 P$ `9 V3 z2 C
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
0 i/ `5 m3 S9 m  n. r# [" l. l以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
% C) ^7 C, E8 O9 o# gswarm.SignatureNotFoundException
* s. e+ ]7 M" D! {5 w# i- W        at swarm.Selector.<init>(Selector.java:76)
3 f+ l/ t3 K+ h8 F3 H        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: A4 t& @3 X2 o- }- x! A        at ActionGroupDemo.main(ActionGroupDemo.java:67)
7 F! U# W% E# s0 T: {
1 o+ q: X* B3 R
& S1 Q8 u# ~. X9 H' h; nimport swarm.objectbase.SwarmImpl;9 u; W9 J( J4 |
import swarm.objectbase.Swarm;
, O: T- @& G# T" dimport swarm.activity.ScheduleImpl;
' l$ A) s$ b: aimport swarm.activity.Activity;
+ R6 u2 y  t% yimport swarm.activity.ActionGroupImpl;5 p- i3 |' @5 J$ r# m
import swarm.collections.ListImpl;4 `, ]% S( J4 y% X
import swarm.defobj.Zone; ( n4 L( p8 Z) B1 Z/ g$ {) ^
import swarm.Globals;
! G3 G3 n  |& A! s/ pimport swarm.Selector;1 [& F9 `/ f% s+ U3 k. _
import swarm.activity.ActionGroup; . ^4 V8 H3 R8 z& Z$ B0 H
class Agent {
4 o# K+ l! ^' W        char id;- \5 ?: h. U. A
! r1 y( H% a- w; V
        Agent(char id) {# i! Q- @5 e  y2 k1 T7 R2 M
                this.id = id;
0 a$ ^% ?4 ?: T6 d# [6 V7 |* X        }
# U9 s% r; M' ~) D  g- i# p9 c7 L; ]9 h" {0 t9 h
        public void agentStep() {% m5 ^4 F5 J% A9 [; j" N
                System.out.println(id + ":" + Globals.env.getCurrentTime());
/ q* w6 a- y1 y; \2 Y* @. P        }
6 E  m, D/ D8 Z3 l3 g}/ S8 U/ @+ L4 A6 F' g7 R
' B9 l2 j; }9 p+ H: k" e8 r7 ~6 ]
public class ActionGroupDemo extends SwarmImpl {
% T6 H5 g3 R* @8 Z        ScheduleImpl schedule;
* `# u4 m9 W% ]7 o" z        ActionGroupImpl actionGroup;
- _, Y. H0 s9 u3 d; P( }9 B        ListImpl list;/ x8 J8 U5 Z. m  P
        char Id = 'a';( b: ^# j2 E, f5 K# g  f
: e4 b* _$ }6 g& e8 u
        ActionGroupDemo(Zone aZone) {
( l  p1 n+ a- N& H; [" ]                super(aZone);  e, r7 x6 Z) e) t
                list = new ListImpl(aZone);8 ~# p. R! R% N: S. ?
                swarmSetp();
0 J+ f" L+ [1 I* b, b                actionGroup = new ActionGroupImpl(aZone);
. U& \$ ^& C2 F# n& q3 t                schedule = new ScheduleImpl(aZone);7 m9 Y* I' _+ |4 x: f+ Z4 h
                try {
& \6 I* }  a5 @1 b0 G6 e' X/ d                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
$ h2 u4 a) x; z$ d3 _! Z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; M8 V4 F1 H2 J
                        ) D& o! z2 m+ d5 j5 E5 Z
                        actionGroup.createActionForEach$message(list, agentSel);
. ~" i. n* U4 d! h) {0 K                        actionGroup.createActionTo$message(this, swarmSel);+ y+ D! Q! J6 `- v0 Q
                        schedule.at$createAction(0, actionGroup);" @3 F- |% a2 N+ y' _
                        schedule.at$createAction(1, actionGroup);
9 J8 r7 n: w. z                        schedule.at$createAction(2, actionGroup);
- E3 H; s5 z" ^" b- \' d* n9 _# f4 }: o; O
                } catch (Exception e) {
5 f) _+ J" f: v( i8 z/ @/ o. K# ~                        e.printStackTrace(System.err);- z9 Z' e& F9 T. a
                        //System.out.println(e);  D( H3 m0 W3 o) a, G
                        System.exit(1);# _+ C+ U9 ]* i5 ~. S' b2 j) y7 ?: i( A
                }" w* x6 W6 X' o% Y7 [/ j
0 G% w. v  y9 `( u! t8 u; {# p
2 R( l6 c3 P. M' ?6 _: g& `! k" l$ ]
        }
" c  F) k3 _% y; D
4 R; u7 g0 h$ f0 C/ q% f        private void swarmSetp() {% s; a2 c6 j; W+ e2 ?6 \1 s: b
                list.addLast(new Agent(Id));9 V1 j" ^) O5 G. Q7 T
                Id++;
" H8 q" S5 {0 I, |+ L2 o; `1 Z        }
0 X3 d0 t% N. Y
" q; T) O( z7 x3 H( }1 G; L        public Activity activateIn(Swarm context) {, u4 S) Q. W( e% ]# [" b
                super.activateIn(context);. ^, e+ D+ _2 t6 B# b  X
                schedule.activateIn(this);. v" n5 y) h9 ~8 m
                return getActivity();
' w  J) g1 T! o8 P0 Z% }$ k% z/ Z        }/ `+ q- X" Y) q, t  }' @* d2 a

; a4 ?+ @2 }6 B7 `) N" U+ E" Z3 X8 I; ?& _        public static void main(String[] args) {$ q( w" Q% p* V. ^: @. c1 [; k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 t+ w! Y) }. g$ v  O* t; M! ]8 |
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
* L  X8 G! \; s; H                swarms.buildObjects();
" k0 u5 i0 c5 R) s! v% B2 n                swarms.buildActions();$ f) a4 c6 U3 ]& N
                swarms.activateIn(null).run();$ M  G" [4 Y$ J# I' s8 Y  w' o
        }' m8 V& E" g6 ^; F$ ^( [6 Z: G! @
. }6 ^1 n- ^! n. B* D# u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-28 09:32 , Processed in 0.019248 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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