设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4726|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' W1 e0 }  J+ F1 t
3 S, C, N' Q) R7 K. E9 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* z& C, C+ m) Z- o* `# Z4 f. Z( d- `
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
4 w3 H1 R, H* I% L8 tswarm.SignatureNotFoundException
9 e4 {" D; e% D8 v1 J% R# z        at swarm.Selector.<init>(Selector.java:76)8 V/ F8 i' {6 G* {/ k
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 H2 m+ a; [- {4 Q0 K1 w$ `4 u& i5 E
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
! P, [, I, d) E- z% |$ T& K/ `3 z& F4 n/ J$ Z- }4 x
* ?% c, K' u2 u! P. \# ~6 d
import swarm.objectbase.SwarmImpl;; ]4 `, n0 O: k' K' ^( r
import swarm.objectbase.Swarm;
6 s% i, ]4 U# `: a' H: V; F8 n( Ximport swarm.activity.ScheduleImpl;
  T& G0 Y" d& j7 l8 Rimport swarm.activity.Activity;* k; ]- p0 n8 g5 r$ b- d
import swarm.activity.ActionGroupImpl;
, Y% o0 b' Z. r# ^1 n, O2 timport swarm.collections.ListImpl;
. |* ]! M' f- s0 Timport swarm.defobj.Zone; / l' q! g: W6 |; ^' s
import swarm.Globals;
- ^5 B3 D; i" U; S6 Y4 A& c6 ]import swarm.Selector;
+ Y4 G6 N) \: K8 Gimport swarm.activity.ActionGroup; * H. u3 Y( B4 t, _) [  V
class Agent {
/ d8 I! B1 }6 b* Y! \- ^( H! N        char id;" V0 t$ O# ?" O, P) _. j" T

) T  w" W+ n! e9 }+ d4 D! Q        Agent(char id) {
! E  m+ ~; s0 }0 l0 B                this.id = id;. `6 Y% i1 D. Z1 s! f9 k( p/ m
        }, u$ W  t% g* {* O& m. |* ]

, ~7 z* e- v6 I2 Y5 i        public void agentStep() {2 y6 B5 ]' a+ H; c3 @
                System.out.println(id + ":" + Globals.env.getCurrentTime());0 C& I/ @0 R3 I0 h- {
        }2 `4 h7 U- Z1 ]+ L/ X; `2 a
}5 _& h8 S% {+ f

; ]: ?+ {8 N* apublic class ActionGroupDemo extends SwarmImpl {( c8 R: s! ?3 [- j
        ScheduleImpl schedule;
, q+ O3 X) o* H' b/ t! d9 W        ActionGroupImpl actionGroup;
' h) q' j2 J2 Z) }' i2 X3 u        ListImpl list;
* W3 L; U/ Q3 X( ?) ?        char Id = 'a';
# }4 U7 F! D; v) b! r, N2 l0 ^: s' @% q& u" f+ t3 S
        ActionGroupDemo(Zone aZone) {6 B3 f  a" Q1 E3 [7 I: M4 b1 h# ~
                super(aZone);8 }* j' Y7 `# _' {- \
                list = new ListImpl(aZone);/ s; [8 q! M- M! g! @; m( H, H, X
                swarmSetp();
/ t' z- ]! x9 c% X% a. L                actionGroup = new ActionGroupImpl(aZone);5 E1 }. x9 e3 u/ }* B. N
                schedule = new ScheduleImpl(aZone);
" f0 ^4 O2 g# k; d3 w3 B" L                try {% k( u' A, u+ d+ S/ b7 d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; @0 f2 y+ k7 O0 V. g+ u8 D+ ?3 a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% ~' Q0 E- G' L% C                        
/ L8 e" X, [4 `5 P; P* A                        actionGroup.createActionForEach$message(list, agentSel);; B% @4 m1 g9 P$ _5 T% K1 W0 k# q8 B7 C
                        actionGroup.createActionTo$message(this, swarmSel);( p. {8 }# r- z4 @8 U2 U" g
                        schedule.at$createAction(0, actionGroup);
' }  b  F, U' W  H, l9 V' }                        schedule.at$createAction(1, actionGroup);
4 R4 Y3 w" I3 G$ B$ d! w. W) C9 y                        schedule.at$createAction(2, actionGroup);
# A. j) h$ P$ a+ i. h5 n2 Z$ V5 `' ~, z
+ P, E# h9 R" K$ N! Y: b  r% p4 M                } catch (Exception e) {9 t' c, Z9 i& c( \
                        e.printStackTrace(System.err);% x/ u& p7 B9 N% h' u4 R9 S* ^
                        //System.out.println(e);
9 x6 |" p! u3 z  d' e                        System.exit(1);
  u  b4 n, u4 X8 K' O7 W( c0 t                }
& D! N8 y$ O+ U- S
3 O, Z; `/ V7 s6 x) n  D2 @/ r3 I) ^5 y$ Q7 x9 S, u0 v3 H
        }9 \$ |. B: G1 T# v

" ^, z- t1 W  \$ r8 b        private void swarmSetp() {
2 r6 b( O  G1 n, W                list.addLast(new Agent(Id));
( a. I9 m, _" p# F                Id++;
) L. g" O0 N0 _1 W/ b        }
; S1 Q8 o+ m* H7 l/ {  l( c/ X9 _5 ?
/ d0 m7 A" ^/ _+ V        public Activity activateIn(Swarm context) {& k! Y8 j4 T0 [4 O- G+ I9 F* Z
                super.activateIn(context);
3 U' n1 {* L! [3 P  y! I- [+ w5 d                schedule.activateIn(this);
& |8 X. @7 W( |, B' k1 F2 A' z( i                return getActivity();
& V6 }7 R: x' X0 S! n7 T        }6 x3 A, U. S5 z5 T: n! t: x' r
9 y! K# y; y$ j4 Y- ]
        public static void main(String[] args) {
0 z; j: H# N) d7 |0 D0 G% d8 N                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 G* P2 d0 L7 U! f, @5 U% ]                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);$ X* {# [5 i# @) Q2 U& z3 r: F
                swarms.buildObjects();
+ E& g% R% S" [0 W8 I" i# G7 L% Z                swarms.buildActions();2 a8 D4 J) a3 P* Z& X* v
                swarms.activateIn(null).run();
# e- g) `6 d1 @$ D4 {, p9 B8 ~  F        }( E! k4 D, M3 F0 _/ i

- k( B2 j) G# f, \% ?. Q& h+ n; T3 I}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-9 02:21 , Processed in 0.450852 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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