设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5423|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
4 I) _: B/ L! G$ i& O
$ W- b2 @, A5 L( A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 s4 j4 i7 f- F+ u- M
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.( y5 e! D2 K! E9 t- N( x* V
swarm.SignatureNotFoundException
0 N6 y! w: A! o/ x4 t! e        at swarm.Selector.<init>(Selector.java:76)6 e1 m5 u3 o, l9 Q; s7 @8 N5 w
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 @' h; q/ C2 A; h6 k+ U5 E        at ActionGroupDemo.main(ActionGroupDemo.java:67)5 i& p% ?+ N4 x+ ]/ x- k' [7 ~

/ t3 q& u2 O. T0 C; @  S
( j/ r( p4 m; `: @- iimport swarm.objectbase.SwarmImpl;% f2 m& |4 M# F9 X( y
import swarm.objectbase.Swarm;
; h& Q7 r1 S& r7 H6 e- Y. D+ `& _. pimport swarm.activity.ScheduleImpl;" E$ v/ E. ?6 K0 c5 a) r+ r* J
import swarm.activity.Activity;
7 d$ ~8 R! B' A9 yimport swarm.activity.ActionGroupImpl;
: H7 o1 `: T7 O; u% Limport swarm.collections.ListImpl;; H! y6 h! q, E* Q( L1 u
import swarm.defobj.Zone; % V& i2 X: r7 z
import swarm.Globals;
: b/ E- j) N6 Zimport swarm.Selector;
+ i0 a) Z, S1 k0 Eimport swarm.activity.ActionGroup; # g2 b3 w$ \! o: H% ?% z* m
class Agent {
5 i& S6 P! y% P3 p5 N        char id;
9 R" o& f9 Z; K& Z2 S
9 ?9 U" j5 e; I, o        Agent(char id) {
& Z* i0 t* q. ?                this.id = id;: S( d1 o2 }. l& C# h
        }
1 C3 `9 E# v/ z8 d/ X5 ?0 C0 q2 j$ S  ?3 n* n
        public void agentStep() {" n! K& c' g# }5 W! O
                System.out.println(id + ":" + Globals.env.getCurrentTime());$ Q- B4 r. x9 h1 y- ~9 u) x
        }
+ X) ~. ]* f1 ?& S9 u. U5 J, V}
' Q1 ?+ f2 f* K9 ~# v. F
8 b) g- L$ f) ^. G* Epublic class ActionGroupDemo extends SwarmImpl {
/ y/ }8 J+ k6 O: L- e$ {% g        ScheduleImpl schedule;
! v$ ]0 k2 _% [        ActionGroupImpl actionGroup;! r) ~& B. P% |3 o+ z
        ListImpl list;0 m% D- j/ M4 e+ H2 _
        char Id = 'a';7 p) d( q  _- l
; F, x3 C, [. t% I+ _) V& y1 q9 ]
        ActionGroupDemo(Zone aZone) {
) K/ a% t' T0 N* Z. {1 n                super(aZone);6 T4 c$ n1 C6 C: U+ y
                list = new ListImpl(aZone);' M- Y# `# m0 x
                swarmSetp();: _# F2 o4 F* D8 {' ^
                actionGroup = new ActionGroupImpl(aZone);
# @; U+ [( ^: W. g' P1 r% T: l                schedule = new ScheduleImpl(aZone);9 c% n9 Q( I4 y7 z$ E
                try {. h+ r  N! H* f, y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( Y4 J9 U9 W4 _% ^                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- p' k( z* h( j" ]                        ! E: Q# w: Y" Q% o! h
                        actionGroup.createActionForEach$message(list, agentSel);5 {! x) ~( O  k) y0 j
                        actionGroup.createActionTo$message(this, swarmSel);
; f  x5 c1 I- V+ q2 z- d                        schedule.at$createAction(0, actionGroup);9 ~4 B8 ]9 m& X/ v" p: J- |% Z! n
                        schedule.at$createAction(1, actionGroup);
8 k* {) ]& t5 _% |/ e                        schedule.at$createAction(2, actionGroup);% ]3 {0 N5 |, \( b; q) U  _4 y

& _9 x! ~" A: u( e2 g  `                } catch (Exception e) {
9 y; S; Z6 @" n% Q% v- G6 V                        e.printStackTrace(System.err);5 \2 G7 H; d/ ?, E
                        //System.out.println(e);+ Y# _. |8 H! @) D( w6 Y
                        System.exit(1);4 B) }6 r7 r% ^8 c+ Y
                }. u$ p2 P. m& S2 K8 s* R7 E! @
" y, I3 u- x  T4 ?$ q& c
0 E$ ^8 M8 v* N# e6 k
        }
; p* r  l0 m( _1 Q; M! O1 e9 s, C/ R) ~6 H1 Q' b
        private void swarmSetp() {
, X7 X+ a; B9 r8 ^0 b; s. }4 ]9 K% _                list.addLast(new Agent(Id));: q, m2 X& t1 q
                Id++;
8 ^& w9 h. O% n& R! M        }! p# p! H  P4 Z

! A- i* |! s# W0 Z: @; m        public Activity activateIn(Swarm context) {
; k" l  O1 Z4 c6 Y/ ]                super.activateIn(context);9 j8 `5 s) b: \8 B
                schedule.activateIn(this);
! T7 g  I. `; y. G! U3 X6 n/ U                return getActivity();
: b, L7 Y! j6 E1 O        }9 C' a. g; `& e4 ]

# z" K5 M  {( C2 z" E        public static void main(String[] args) {( ^; P$ A; u! q) M. {# l. X
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' Z0 W0 `( _) y+ ~/ p; j  S. I                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" f# n) V% L' }                swarms.buildObjects();* ]5 ^" C/ L/ X
                swarms.buildActions();
" n6 ^( j6 v! x                swarms.activateIn(null).run();
6 z* G; _: V7 K* i/ B7 E        }
* x* ]3 _0 r! g+ ~* n& K. a- i) p  D: Y6 W; p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-8 15:45 , Processed in 0.022930 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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