设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5346|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* g5 d- S8 C+ ]% A8 ~+ U, C9 a, M2 [4 @# ]' f! o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
4 j  J; e8 O: g% a7 G" U! w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.3 @0 j' _# C0 Q- j: @2 f
swarm.SignatureNotFoundException
4 Q8 P- h5 f7 f& s        at swarm.Selector.<init>(Selector.java:76)
' l$ Q% d1 E& P* O1 G        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ v& {) X% z, s$ q, D        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: A; S5 o, ?3 z. D  A; J8 T6 P3 E
  |3 u9 x- Q- _2 d, K
+ h  v1 V2 A; I' yimport swarm.objectbase.SwarmImpl;
3 D" a( w& r% W. Cimport swarm.objectbase.Swarm;. T0 K4 r( @' Z( y% X8 X
import swarm.activity.ScheduleImpl;
0 p, y' R0 f* A: u3 ~' s( H' V9 d9 t3 oimport swarm.activity.Activity;; P) r+ x0 @' Z0 q3 V- B8 w
import swarm.activity.ActionGroupImpl;9 _- ~* E; u9 C# \/ W8 b8 b
import swarm.collections.ListImpl;$ N9 ^/ [! i( j3 A1 E% `
import swarm.defobj.Zone; - G1 ?) s- j0 m2 g# Y" f2 f
import swarm.Globals;
# Z$ l8 O5 D! U' p. z! Q  }import swarm.Selector;, o! K/ C! \$ B
import swarm.activity.ActionGroup;
" b; h/ _9 q9 V- j" Yclass Agent {1 C& M1 x% S& o7 P1 o
        char id;
, H# A5 W+ z  F% `: h: T, C3 w0 v$ C% S
        Agent(char id) {
! j' s* G, \  H" ^+ o  i                this.id = id;8 t( @* Q- J0 @. @# i
        }
; p6 D! K" X/ x) B' O" F" q1 u4 I  u# y! x  d6 Q' h# l
        public void agentStep() {
; q5 ?! J+ I- h  H                System.out.println(id + ":" + Globals.env.getCurrentTime());% a4 w! p! ~* A2 t+ n
        }
3 o4 l* Z2 i2 q: j8 X5 R}
' i! r9 F2 L8 }7 y2 Z8 ~: {( x, P/ V% h& R5 I5 W- c6 S
public class ActionGroupDemo extends SwarmImpl {0 m4 T: _6 o, e- L( o
        ScheduleImpl schedule;
% ~' b9 j3 a1 t' a' W$ @        ActionGroupImpl actionGroup;" t/ T$ @* j# y( \* A$ W7 ^
        ListImpl list;: p; F* E' B& g7 r& Y) p  z7 C& g
        char Id = 'a';( {# T- v9 T1 t( ^; H6 `, @

5 l+ W, `4 y5 _1 |1 W! x" [7 L2 J        ActionGroupDemo(Zone aZone) {' {2 S: [4 F4 S% g9 p- h- I, h1 G
                super(aZone);! f* O9 L! o! ~- _
                list = new ListImpl(aZone);# A, |' F) b( W' j) t5 A8 \- u$ g) _
                swarmSetp();
2 T% t) g5 @  J4 E7 B                actionGroup = new ActionGroupImpl(aZone);: Q9 R  Y* [4 C2 _# b. a
                schedule = new ScheduleImpl(aZone);3 s5 {7 B2 D7 o- S8 x
                try {$ b  U6 D! V  l1 o7 H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) N1 o! b# F' o  t4 j% q                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 O% Y( m" ^; e' b. w/ Y; M. ^* X
                        
( l/ X1 p8 N+ J3 b- G: Y8 ~( }6 r                        actionGroup.createActionForEach$message(list, agentSel);
" @, i) j! L% x5 H8 I7 O8 o" T                        actionGroup.createActionTo$message(this, swarmSel);9 o/ ]5 n$ Y- u' h  r6 N
                        schedule.at$createAction(0, actionGroup);7 v4 d& ?0 p, K0 v& D( ~# B, B
                        schedule.at$createAction(1, actionGroup);
9 w' _2 y* F6 u                        schedule.at$createAction(2, actionGroup);
% Z  S2 a8 p+ M% h( N0 ]" ^& B$ f4 l# n0 \# I$ r
                } catch (Exception e) {' c' J- [8 H) b
                        e.printStackTrace(System.err);9 `1 P: D4 c8 a% p
                        //System.out.println(e);0 L( ~# \' i0 t8 @' O8 w, N: I
                        System.exit(1);
, _5 z( B3 ]/ u& u7 ^                }# b2 J  I( w# y" `5 h

7 g9 a/ [) f7 F- w: {
8 R4 g. Y) J! K9 N4 y) d        }) |, ]; A, c; A& Z% _

7 S7 z( X) |, G5 J0 R' c        private void swarmSetp() {
6 J3 o+ o# O: p! E: }                list.addLast(new Agent(Id));9 z9 {: ?- A: Z5 m2 A5 h
                Id++;
: N0 Z7 l$ s4 f( F        }
" \* G: R" ?, c* s4 s/ Z7 j) q
7 j/ Z: [& x/ @        public Activity activateIn(Swarm context) {3 Q8 y  x2 V2 Y: s1 ~
                super.activateIn(context);( }* a/ d1 U6 a, e6 L
                schedule.activateIn(this);
/ {+ d' x" c( h7 d                return getActivity();/ G9 F: {( K$ ]7 y, B
        }
+ ?. E4 O: K& s5 o5 s" o, d
( w% q' H( q; e; s+ ]  n1 P        public static void main(String[] args) {. H- a- s; J6 X4 Z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# h2 K( q/ d, W2 M3 E                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ Y1 l9 w* n5 [3 U. Y# Q                swarms.buildObjects();
: M( A/ B! R# v( U  s                swarms.buildActions();
- i6 Z, S' @" m7 w: s; K                swarms.activateIn(null).run();+ B, l6 o5 c9 I5 e% r$ @0 }
        }
7 ?4 L. y3 A4 P2 b$ C+ Y3 }
: |2 E: j! O6 P6 B; c% a8 ]}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-5 15:41 , Processed in 0.024246 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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