设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13181|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  Z' q8 {6 b) f. i$ I; ^
- K4 L# t. m9 x) W9 ^- M, H- Z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 f  L# f- D( S6 O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 q  D. B( j6 K8 J/ F6 D  A& {
swarm.SignatureNotFoundException
7 s5 r0 ]( f3 O( E        at swarm.Selector.<init>(Selector.java:76)
$ S1 K  o2 x: S9 }- I8 }        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 r2 v# R: A; v; P9 X        at ActionGroupDemo.main(ActionGroupDemo.java:67)
. a% F$ ~1 b2 ^, {) W$ I. R. l  l) l7 h
2 R( E/ `; Z& t; ?8 D- N3 C
import swarm.objectbase.SwarmImpl;
6 k" K+ U, H4 c9 }/ x. L- uimport swarm.objectbase.Swarm;/ ?" f5 `6 o) f
import swarm.activity.ScheduleImpl;/ y1 P9 X  ^; T
import swarm.activity.Activity;
8 N. n+ W9 Q- f( Bimport swarm.activity.ActionGroupImpl;
; {* V. U6 \, b$ Q) ^+ ~4 N1 Wimport swarm.collections.ListImpl;" O3 }& [$ Z3 @& v- {6 z$ W
import swarm.defobj.Zone;
* U- \, e0 a  J0 K2 oimport swarm.Globals;' Z5 n3 R% c& o, S5 G1 N* f
import swarm.Selector;+ H  w; l( }6 [1 K+ Z
import swarm.activity.ActionGroup; $ d* T( _% t/ ?) X3 ~/ m: ~
class Agent {+ ]; O6 x% \! U' C2 }1 G
        char id;) O: |" `# ^! {

( P: ]6 k% G  D, q        Agent(char id) {6 s' \, C/ c! K+ Q+ w9 A
                this.id = id;
, N) f5 g6 \, Z5 |! @        }) K. f0 w, ]  I, _

7 S/ V$ ?! G0 L+ e4 F/ L        public void agentStep() {9 C# E! T) r1 h4 H$ f' d! ?( S+ ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());' w9 I% L  k% `9 d. B
        }( K4 Q# ?0 U& t% H% i" r; e+ v$ H
}- p, o3 e, y8 T0 t

9 }' E$ s- g( b( \" Gpublic class ActionGroupDemo extends SwarmImpl {
+ v+ E$ J4 [/ B2 u" }# R4 i. Y        ScheduleImpl schedule;4 ^. C0 H- [0 r$ y
        ActionGroupImpl actionGroup;! M: d- J# s" O1 j2 A4 j- E
        ListImpl list;
! x7 f' ~9 h9 i        char Id = 'a';
' a8 \- K- A3 |8 I2 y/ o$ E% N/ L2 A$ l7 E+ J! s6 b
        ActionGroupDemo(Zone aZone) {
! T6 `( p% H, G' z- R! u2 s                super(aZone);; O$ L8 C) F) t$ k; N* E" G
                list = new ListImpl(aZone);
2 V; R+ o- j" Z                swarmSetp();! x: |: i& @( O$ y
                actionGroup = new ActionGroupImpl(aZone);* F; D* [' {* D4 W
                schedule = new ScheduleImpl(aZone);& h( S* d) y; o# F0 g
                try {2 K& Z. e! V. i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 \: g( {$ G8 }; r/ o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! }5 b% N# F. n; ?
                        
+ B2 `' f' ^) ?                        actionGroup.createActionForEach$message(list, agentSel);
* p' F: u. U2 C1 U: N9 O; C0 y                        actionGroup.createActionTo$message(this, swarmSel);
# T; X$ h0 p7 l& |: k0 X* j                        schedule.at$createAction(0, actionGroup);! Q  A( d0 J1 r, ^  D
                        schedule.at$createAction(1, actionGroup);
6 X- U- r- ]. [% `                        schedule.at$createAction(2, actionGroup);
5 [9 q0 }4 r7 h8 t0 R, x8 L- {( D4 T% K* C. x
                } catch (Exception e) {! K' I. Z0 L+ ]; [7 W2 H$ A
                        e.printStackTrace(System.err);4 X) I, P) @* O& H" G; c
                        //System.out.println(e);
  s6 Q/ u9 T4 ^/ Y+ D' g. S                        System.exit(1);
. i4 v0 K# F  x* S+ y: t# c9 c4 [                }: R1 p% `3 ^) B
- r2 j0 C' [+ I+ N& e3 u
1 `, t9 c) |* s2 H; _' n
        }
# e) ^/ d; d# h) j3 n& ]6 n$ }% I2 d, u7 H* C% ?
        private void swarmSetp() {
& \& w* {* h* X" \                list.addLast(new Agent(Id));* \1 ~6 z$ ^# w
                Id++;
/ l( Y' ]) O5 o8 x& F% Y8 e        }. c, V1 T' F5 j  e8 N0 }

* |1 Z" H) q' U        public Activity activateIn(Swarm context) {( M7 D" ~- L7 }+ d5 z5 [
                super.activateIn(context);; ]) H# Q& S5 B9 l; ]# Z) v+ Z
                schedule.activateIn(this);
4 M' {" D4 r" u6 {$ H                return getActivity();
/ D$ a# h' l1 g* o% C        }
/ e4 T6 e7 q  x5 @/ t- Z2 o3 f* w7 v! S: T5 C# q
        public static void main(String[] args) {! }8 B4 Y0 R! f8 X; a. N8 s# W
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);8 n0 v, O1 Q, N0 N: K
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 p% x& `5 ~0 o                swarms.buildObjects();0 @1 ~$ A6 d8 c/ y
                swarms.buildActions();
# }, d. X, O) d8 G, q! Z+ I                swarms.activateIn(null).run();
  z3 ]: s, o" F- Z) E4 h# m        }9 F, F0 ^1 O6 U' h
3 S3 c& U# c, f6 F' t8 |) B7 i' Q( [' g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-30 18:50 , Processed in 0.015431 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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