设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12835|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
% J! S$ X: M3 O: Q& b% T( A" f+ I! ?! c5 T
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- c# K9 [; @. ?0 Y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.5 H; ?2 Y2 s8 k) B
swarm.SignatureNotFoundException  t) m7 t0 P; j" z- u/ i0 m; z
        at swarm.Selector.<init>(Selector.java:76). O6 F  }* r& ?  z+ Q( M
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
$ s! O6 _$ q/ M8 h! Q" d& [3 ^        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 K6 {2 N& s) a6 J  C

/ e( u, l  C# c0 ?3 b' g' y4 N8 _2 {  @8 B
import swarm.objectbase.SwarmImpl;" H) E& b1 D6 n5 y( P
import swarm.objectbase.Swarm;
5 ]1 I" N! |1 B1 Q3 ]$ Limport swarm.activity.ScheduleImpl;/ n6 U$ @9 Z) J1 s, o
import swarm.activity.Activity;% s8 p/ w3 Z5 B: ?4 O* P5 V- X! J3 Q& B
import swarm.activity.ActionGroupImpl;
1 }) _* f5 v4 }. Aimport swarm.collections.ListImpl;
. h2 ?" P0 f5 G$ `5 e! Uimport swarm.defobj.Zone; ; r. e4 H! X$ Q) j* G
import swarm.Globals;
  H2 n, a3 C- l* ^' y* }import swarm.Selector;
2 d. ~0 k8 e, B5 O4 i& U$ ?4 qimport swarm.activity.ActionGroup;
- [) W7 |& r0 J" pclass Agent {- R8 H7 {7 s- k0 u& I% ^  _
        char id;
' `+ X. G. ]1 o7 N
+ |3 A( \# H3 ?. b3 W        Agent(char id) {6 U1 A' ^$ m: V" N
                this.id = id;
2 R; v2 p) L  ]0 M9 ^( A        }1 x6 c# A! a) b$ z6 F
+ K& i5 O$ P6 f: D6 _
        public void agentStep() {
- f+ j& v7 Y; X( D                System.out.println(id + ":" + Globals.env.getCurrentTime());! L3 H0 ^* Y5 @( _4 M
        }
; O& G, `: R; Y( u5 o/ Y}
) r1 V+ m, R7 ]7 X' B- h
" q: J* O- M0 Q8 O$ v" K" Upublic class ActionGroupDemo extends SwarmImpl {  a$ |7 Z# \$ V6 ^
        ScheduleImpl schedule;
; ~# R2 X  t! T; G1 r! b2 ^        ActionGroupImpl actionGroup;% S  t5 e' E/ h! ^, @- |+ g
        ListImpl list;  U! j. v3 V( |& q
        char Id = 'a';/ L7 T* i' X4 r4 J+ p$ w

! l, X; B- O( m3 O        ActionGroupDemo(Zone aZone) {
( [4 \2 L6 @' b                super(aZone);
4 Z: V* B0 M' |7 w                list = new ListImpl(aZone);
; t# D" A" f$ g! L# N+ B  M                swarmSetp();$ Z* |5 Y7 B; b+ X
                actionGroup = new ActionGroupImpl(aZone);
4 l& r; \. A7 l( ~                schedule = new ScheduleImpl(aZone);
8 S: D) q3 y7 M) v! M' P                try {4 N0 U9 Q1 g$ A8 O& ~
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
, P! k% z% `. x" D  C' G& G                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! U* ^; G1 N: l0 o  U+ d, f2 s                        ; {9 r  W2 u. }$ B- y8 _7 K6 V
                        actionGroup.createActionForEach$message(list, agentSel);, s: O0 i: l4 q* s" x, i' c' j
                        actionGroup.createActionTo$message(this, swarmSel);
: T! u. J5 k: U$ [( \2 X                        schedule.at$createAction(0, actionGroup);: p* Q4 n. w% n! N- p
                        schedule.at$createAction(1, actionGroup);9 _8 o! E5 z& N7 T) d1 t9 i
                        schedule.at$createAction(2, actionGroup);
$ v% A7 v2 z8 z4 l* L" \% `3 Q3 Y+ h- X
                } catch (Exception e) {" \( n5 R% ]* a6 R! g. I
                        e.printStackTrace(System.err);
) Z0 S% @. z8 f% O3 {% z" w                        //System.out.println(e);0 S9 B5 s! L( M  }
                        System.exit(1);# [: H3 t2 E2 r. _; g, }) O; W
                }& [  O1 Q0 _$ m

; z, N7 `- \5 |. Y0 L# E1 i1 p" {9 X; I/ H
        }
) u3 B1 o1 f) s# [
  N, E6 C6 h: D3 ~2 B        private void swarmSetp() {: A  [1 u/ }8 r" j5 z3 p
                list.addLast(new Agent(Id));/ }3 y4 N4 P" N1 B' R
                Id++;
1 d: c" j# }& ]$ H9 d        }& a3 K  }8 ^' E& ^1 P; Y6 f* V
) |* p1 U" a9 \) I8 y- w
        public Activity activateIn(Swarm context) {
8 Z+ b8 L  R8 {0 H! e6 \                super.activateIn(context);
/ n, X/ l* h( m1 X0 [                schedule.activateIn(this);5 Y( u- F3 R* o+ V7 B; {( \
                return getActivity();  G0 F2 ?, H( v, P, M4 Y3 T
        }
) A* [* \. @7 V2 t+ L
8 |1 [" @2 j" ~% X; I( J- ]8 X+ v: x        public static void main(String[] args) {
3 N0 R; y: s) r- C2 {                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: U9 d$ O' N% [- n( O8 B' {: t                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: d% L* T4 q1 w  W0 h
                swarms.buildObjects();
5 o# [6 L1 @" I4 K4 m                swarms.buildActions();/ X. C8 D; @: t" F5 K
                swarms.activateIn(null).run();& H( r  [2 u( [, u' w) e
        }
' t5 _, T* I4 Z, f% Z( N* [$ V2 c9 q4 p  a8 z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-20 20:44 , Processed in 0.036153 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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