设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5566|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& P2 r! b: j5 |# Y( v" t! J$ j4 r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 B& Q9 r" a' U/ I
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 p* G0 Q3 {* t1 m% y6 T7 S
swarm.SignatureNotFoundException$ |' J& C. e9 q5 Z, _
        at swarm.Selector.<init>(Selector.java:76)
  H; Z: E9 @1 r8 j# b        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 {) {' Y# C; I1 j! S        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 t2 w( A" S4 c" N3 t! v' L/ S( L

% k6 |0 O7 S& D' m: o- y1 p3 Q
5 S) o) q6 w- ^/ _8 p. U* B' dimport swarm.objectbase.SwarmImpl;
2 H: }3 p* W7 K' ~; Qimport swarm.objectbase.Swarm;( f# E: |! p5 z9 M% U+ R% ]
import swarm.activity.ScheduleImpl;
$ n5 j7 p! `: ]6 e1 Nimport swarm.activity.Activity;
, c! J: S5 i1 \9 nimport swarm.activity.ActionGroupImpl;$ ~+ @, |* Z# }+ @8 q* S9 i9 P  Z
import swarm.collections.ListImpl;
6 q0 s* c2 X0 O; n: y; J  mimport swarm.defobj.Zone;
. W6 y0 G$ D: q$ @" {  nimport swarm.Globals;
* K% \* @, ^9 t( O" Aimport swarm.Selector;
0 _- ?1 Q6 o7 Aimport swarm.activity.ActionGroup;
& `5 D# X  ^. i) l! G) |class Agent {8 [: N# g& y& \5 \* a
        char id;
3 c+ U" @' v) Y' M8 f/ J9 {$ d' J# P
        Agent(char id) {% ^0 D; }0 v: O
                this.id = id;
- k$ x# o+ j: S4 D5 e* f; K( J        }- @" e$ S+ e% O
! ~/ @5 ?, l8 y; P% r
        public void agentStep() {1 D+ s; e0 y) ^8 b0 I- M' Y. {6 q
                System.out.println(id + ":" + Globals.env.getCurrentTime());* H0 U7 [& O& H. R3 Y7 z$ D# |
        }
' }4 B% A) D" F+ v}
0 D$ V" a3 D; p6 O7 p8 J" q
0 N6 v1 w+ H! U9 t! f7 ]  d0 lpublic class ActionGroupDemo extends SwarmImpl {
0 I0 Z! H( i5 i! i. V        ScheduleImpl schedule;
: ]) Y+ S+ E. L        ActionGroupImpl actionGroup;3 b$ A5 H, [. m" p# B
        ListImpl list;
9 z& r: `7 M9 E  d        char Id = 'a';# r+ a! V% P7 |& J: i: @! }3 F) f. O
+ I/ Z: x( O1 l' \7 ]
        ActionGroupDemo(Zone aZone) {
# \( Y6 W" a' n" w, B$ B                super(aZone);
" G7 t3 Y* v; d" U                list = new ListImpl(aZone);
. @; L$ m9 m# p. @+ S4 C4 G; c5 I                swarmSetp();
: n% y$ q/ u  O# L& y1 i2 K" ~                actionGroup = new ActionGroupImpl(aZone);: n" a0 j) d& K$ v+ W" L! N7 b
                schedule = new ScheduleImpl(aZone);5 T0 Z" ^" {. E9 \- h/ S1 h+ J9 x  I' y
                try {
9 J( |* ]  l0 {0 h' L2 q                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 o# ?: `3 C, Z+ n, @: \, ~* X
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行$ n1 {1 F! G6 X5 y  h! ]2 p
                        9 E' L% R0 {9 p  J6 w2 I
                        actionGroup.createActionForEach$message(list, agentSel);# K) ?- L5 P9 {1 ^' S5 X3 f, R! }
                        actionGroup.createActionTo$message(this, swarmSel);
/ D* s( e2 i* ]% z. M                        schedule.at$createAction(0, actionGroup);
2 D* K6 {  _- W* z                        schedule.at$createAction(1, actionGroup);
5 ^' W# y) g0 S- r2 z" [                        schedule.at$createAction(2, actionGroup);3 a- \5 j" S: B( I5 o) c! @( p9 g% o
! D* O& ~8 U  r  ^- F
                } catch (Exception e) {
/ p$ ]7 g' O3 J! k8 `0 v) k0 W                        e.printStackTrace(System.err);
. a# @0 k! [$ f2 K                        //System.out.println(e);* J- Q- N7 I3 o9 H
                        System.exit(1);) l  ^( h/ T: ~$ H+ v
                }
; X! i5 {0 n" s
' A& O: `5 ]* ^8 B: ]4 F3 b: J# y* M4 U& |/ i& y, T; X1 j% ^
        }
9 s' Z  O  F7 g( a( d% J; i( ?
5 s/ D7 S/ ]  y0 j        private void swarmSetp() {$ e7 g3 N: p# C3 d! l) A! z% S! h
                list.addLast(new Agent(Id));6 |- J# Z" y, F
                Id++;% N( ~1 ~" P! n8 F
        }
8 v' K& `5 |+ A- c/ t5 j( ]
% I. A4 \: r7 [; M; l5 S/ C        public Activity activateIn(Swarm context) {5 E% I, W. y1 R- ?+ e' p0 f* ]
                super.activateIn(context);! N$ q' [- R, f4 h; p+ C, a+ o7 h
                schedule.activateIn(this);; {( r* ?( ~/ p3 H. N2 T
                return getActivity();5 T, j0 `$ j0 F" P7 F* h
        }
* E! w" K% p' a6 W& G3 Q: }% j1 @0 j
' Z" [/ t( H9 h# e( d$ Z& O        public static void main(String[] args) {  \7 k- r% z; D
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
8 n' U0 N2 R, g* F                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' C6 M9 [; O! a' c8 d( L
                swarms.buildObjects();
% e( Y# A( H9 r                swarms.buildActions();1 E, v, G$ c( x) w) ], ~/ U; e
                swarms.activateIn(null).run();2 P  }, U' T" `* p/ x
        }! L" [2 [* l% B+ M4 w$ x' Y1 F1 d

- B. a( }4 y# j) v& Y$ L& l0 w}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-13 10:51 , Processed in 0.015567 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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