设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13031|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + l% b7 N5 k) M: v0 A, T: u

. |; C; {4 h. p本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
8 ^$ i6 c% \9 P9 N* Q& z# w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
  x; l, C$ P9 M+ v% J2 I) e/ h- Hswarm.SignatureNotFoundException1 @" g9 X, j0 C& J1 e* d7 b) l
        at swarm.Selector.<init>(Selector.java:76)
" A4 [( @! F* P! h" C        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( U2 [& W, i, n* W, X
        at ActionGroupDemo.main(ActionGroupDemo.java:67)! q/ K# m0 {' |) E* n$ s; G
, k+ D, ^5 g( N( M3 e3 u
5 e  m; a, m4 E
import swarm.objectbase.SwarmImpl;# ]) a. V% n+ H. B( m# [
import swarm.objectbase.Swarm;: z6 U. v: f) K8 N
import swarm.activity.ScheduleImpl;
4 C. N" a! q  L" T" @import swarm.activity.Activity;; G: ~0 U2 e7 \
import swarm.activity.ActionGroupImpl;
3 D1 |$ D$ r  w/ q4 O6 aimport swarm.collections.ListImpl;9 K$ n0 O4 d5 t) V- @
import swarm.defobj.Zone; $ O0 l: G. \9 U2 _4 m+ d
import swarm.Globals;
5 B$ l$ w% v4 E4 n: Timport swarm.Selector;- n$ y) C2 [3 F9 m# O! U+ X/ O: R2 H! n
import swarm.activity.ActionGroup; : x" d2 \3 {7 x# a' x
class Agent {
( F* X% I+ ~0 |  m+ E+ |+ ?  W        char id;
) q. O0 i% v, Q6 N+ l! h% t0 w* }3 [( D& j- P, f
        Agent(char id) {% O- k( G! p! H6 c, d6 I
                this.id = id;! Z/ ]* J8 E  c; A" R, d
        }1 U1 o7 e0 Q* w9 L5 w/ g  C
) E2 y  _/ ], J9 J6 I' l3 A
        public void agentStep() {; m$ Y2 p  U1 u5 o5 ~4 X
                System.out.println(id + ":" + Globals.env.getCurrentTime());! J* |: L4 y8 U% }* b- X
        }0 d- }8 R/ z: Y8 Y" ^+ Z0 f
}
) l# F; |' j+ l: E4 ~1 x, D! Z; t: Y- n
public class ActionGroupDemo extends SwarmImpl {. ]9 S$ E7 Q; W8 B
        ScheduleImpl schedule;
" }; q+ g% j3 J; y        ActionGroupImpl actionGroup;; w5 @$ q: u4 _! \- J
        ListImpl list;0 g: Z8 o/ k, n2 _7 ~
        char Id = 'a';& @2 g7 O  L# o
# }' Q) i4 Y4 Z+ g* U# b
        ActionGroupDemo(Zone aZone) {
; P9 h% e9 y" W7 \% x% ^                super(aZone);# I% D, K( ]+ L
                list = new ListImpl(aZone);
- W) J. y1 X& z. @, R# a/ O7 L1 l9 B                swarmSetp();3 j3 x+ `! b* g8 ?! D( r% d
                actionGroup = new ActionGroupImpl(aZone);2 o+ R. {3 i9 I' ^8 l+ T7 [
                schedule = new ScheduleImpl(aZone);: F( }4 @* H, \4 K
                try {$ n; Z' N: n$ ^) g! K7 F3 ?  D
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ ~# E8 M& b2 m' ~, ~' L5 }
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
: j. G& A. z0 ]8 O                        ! t: C& z0 K& c
                        actionGroup.createActionForEach$message(list, agentSel);3 K- w( t% \3 k3 f/ I) y
                        actionGroup.createActionTo$message(this, swarmSel);
& l! ]/ n) K" Z9 J; }8 M                        schedule.at$createAction(0, actionGroup);
: Q3 s0 V2 S) c: g& r# K                        schedule.at$createAction(1, actionGroup);
, H0 Q/ F# d; o/ X: o+ e                        schedule.at$createAction(2, actionGroup);
) b5 P, u" T+ n5 f
  Y+ d, g" ?6 w, c. E* Q                } catch (Exception e) {
2 v, R: S' ?" v4 x                        e.printStackTrace(System.err);3 R/ q& i9 y2 |: s" J! Q
                        //System.out.println(e);. W3 w# b# G& |8 t% C: L
                        System.exit(1);4 T% ?% R" I" {7 z* m
                }3 r- w7 L$ l$ Q) Z
0 X( C! r6 N, f0 U8 o

: _4 b% l: |. ]: I5 q* c        }2 F$ h" y, R+ c' M3 o7 J2 M$ c
- ?+ b0 n& `, s  Q# t5 J
        private void swarmSetp() {3 I% c8 l) y% ~
                list.addLast(new Agent(Id));
4 H. {; f$ W# O! h+ z                Id++;
) |. v9 J! M' c( T. h        }: _; d4 p0 e9 T5 U. L! i

* `( Z; V# v& |) ]        public Activity activateIn(Swarm context) {
) v9 J" O& d0 N                super.activateIn(context);
4 S1 D& b1 C* `                schedule.activateIn(this);8 F; i# Q2 l9 c% V
                return getActivity();5 y# {+ ^. H, {3 N) r7 `
        }, m" N3 d6 O9 q6 c- t& r; X! Y

" e( j. H/ y. c        public static void main(String[] args) {
7 p" I) O3 f6 Y                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
% o& C* `( e  W( P0 h                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 m" `, m5 C3 y2 m% q* Y. S                swarms.buildObjects();
; R: H( l. n2 G2 @! M                swarms.buildActions();4 r) V& U: S* g: ]8 D: |6 J0 Y7 q
                swarms.activateIn(null).run();
: W; c8 z1 k; d) |. w7 f+ e! W        }, W1 j# W; |- f2 n. @

# z2 A& V7 S' N}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-26 11:17 , Processed in 0.015697 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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