设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10383|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
+ b  b1 x- s! l4 D, n
# n' a2 a6 Z" F' |5 S$ N7 e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ b4 H5 m( l/ ^8 `4 L$ ?# o以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# g8 n& n+ m! m5 ^/ @2 Uswarm.SignatureNotFoundException
. V& @( P* t: V* _7 p. k$ a! ?        at swarm.Selector.<init>(Selector.java:76)
( O6 g& G7 n$ d        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 s: M& C: P. u: b+ H        at ActionGroupDemo.main(ActionGroupDemo.java:67)" W- M* Y" ^$ ~) c! b
! q2 X! [9 T( e* F/ G- |
/ v, \% c5 N$ ~- n
import swarm.objectbase.SwarmImpl;
% K/ `0 {* w; |* D, j7 vimport swarm.objectbase.Swarm;+ _# S  E! b7 l2 i. q& w
import swarm.activity.ScheduleImpl;2 t' \. f5 {* U
import swarm.activity.Activity;
( @5 k# ]* Z' z5 a8 z) Aimport swarm.activity.ActionGroupImpl;
' U$ k% c3 l1 s' R1 M% |import swarm.collections.ListImpl;% U: \& ^( I* P5 |* K
import swarm.defobj.Zone; : d  Y3 o# ?9 v: q. n% _
import swarm.Globals;
, j! o, b: s; I$ Simport swarm.Selector;
6 r) f2 |3 c# z% Z* p! P0 ximport swarm.activity.ActionGroup; : h2 ~1 N! V( Y- P+ D- u
class Agent {
2 Q7 h9 T& ]3 ^$ @. e        char id;
+ G' j( W8 h  Q5 `3 G: o( I6 z8 T1 \( Y4 j
        Agent(char id) {6 L8 E& N6 ~5 L" K1 y
                this.id = id;/ D  n' z0 {) z2 s) M
        }
$ w+ e6 v" C# _- l7 \/ \
- i& ]& o  R8 P* ~& l: T" |        public void agentStep() {
2 q0 I4 b( t- p; L4 A+ s                System.out.println(id + ":" + Globals.env.getCurrentTime());' W2 d6 ~6 H1 E% z1 h
        }8 p" [1 x2 s; n- S5 k* ^
}; G, C/ C6 m5 S
* \) G! G+ w# g; V0 N
public class ActionGroupDemo extends SwarmImpl {
0 \' J! U, k( {5 h9 v' v& u        ScheduleImpl schedule;; w, F$ d( [0 f8 {5 h. F6 L6 ?
        ActionGroupImpl actionGroup;
* S6 T# x) L3 z/ |        ListImpl list;
4 l% C$ n5 n; L7 o% v6 z4 I        char Id = 'a';
# y) X8 H. [$ {+ P5 `& ?# T# N" b8 T5 X7 e& e/ v( d
        ActionGroupDemo(Zone aZone) {
9 w' ~6 b! J! b4 W" v# w: B! c; w% \                super(aZone);. F1 F  P- e# b% a% h" y$ Q
                list = new ListImpl(aZone);) n6 V: j. Y" {4 Q
                swarmSetp();
2 d; ^5 u8 f& @' H2 U                actionGroup = new ActionGroupImpl(aZone);
' C& k9 ]6 q3 @# z) \8 q; |; C                schedule = new ScheduleImpl(aZone);2 l: l: f% N3 L$ n
                try {
" u5 \) v) Q4 z( B: Z! a                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 ]2 o' F; Z/ D9 n% U                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 {, w9 _4 z/ t0 B# e
                        
( M! _  ~# t% T1 B+ U5 i5 A                        actionGroup.createActionForEach$message(list, agentSel);4 v+ f! O/ T! |- o. a
                        actionGroup.createActionTo$message(this, swarmSel);3 I( [! @* J  w! ?$ _7 k
                        schedule.at$createAction(0, actionGroup);' E0 L6 @2 M9 }9 w
                        schedule.at$createAction(1, actionGroup);7 }2 k+ ]8 B. w' A
                        schedule.at$createAction(2, actionGroup);
  G- \! d7 X; @+ |$ ?
" Y1 L8 ]2 ?  a  V! R/ \  U                } catch (Exception e) {
( r6 H1 j9 E! H( ~/ D                        e.printStackTrace(System.err);
% G6 T3 e' e9 c3 G0 A$ [; x  ]                        //System.out.println(e);1 a, X: j  J) y& r% S7 d" \
                        System.exit(1);' H% ^/ r/ p. g' k' L8 Y2 n9 X* w
                }8 U8 ?8 W: t+ v( U' S. P; S

+ w* f& W; h% o0 G) [# ]6 @! l$ T5 @( x! g7 A+ Q& y) L2 `
        }8 M* Y( [' W! s: I- d4 }( {: ^: y/ I

( \+ @, G8 ~% ]' Y5 t; s% R        private void swarmSetp() {3 w7 C( x3 U( J. B
                list.addLast(new Agent(Id));
8 C' @2 g3 I9 X1 ?  E                Id++;0 C  H$ [" W7 S3 b* d0 G" d
        }$ ~: S0 v0 _* c" l$ `

6 a! h0 J& I1 U        public Activity activateIn(Swarm context) {
0 @& X% M% A  a9 D" G/ n                super.activateIn(context);6 l( c# Q. Y0 L% b
                schedule.activateIn(this);
+ |6 }' y4 C$ p* {) x                return getActivity();4 t; `$ B& u. l
        }
* `, x- i& |8 N9 m
" U; `$ T. X7 A/ C9 p' X- G        public static void main(String[] args) {
9 ~% n  i& B2 ~0 `                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  ]$ X9 X* h- G6 |+ W" [                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 [; s5 t& a& O; H8 C! c% G
                swarms.buildObjects();
) b  {/ g1 _7 _, x) U- N& A) }                swarms.buildActions();
% I6 }# E) U, f$ I2 |( ?                swarms.activateIn(null).run();2 w8 B9 t0 m2 O- G5 R
        }
9 O. {6 B3 A6 G  T" P  z0 k  j
: \5 g( Z* `' n) A}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-12 17:32 , Processed in 0.012523 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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