设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10593|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' x  D$ }- n4 e9 v. \0 B2 c
5 k) n! Z6 J( Q% \! a
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ [$ W) _! m' E以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% u& p% i" C& H, ^2 x& W
swarm.SignatureNotFoundException! P/ x# ?3 |! K) X
        at swarm.Selector.<init>(Selector.java:76)2 w8 C7 l( o! @: C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 Y. S/ y) F! y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)* [& e: Y. M7 Z) Q, U1 g

3 F5 I  _" t( H6 Y2 ^/ |* Y& d5 J! y' P
import swarm.objectbase.SwarmImpl;
9 R, [! U% s% Y& G7 ]3 T5 o6 Gimport swarm.objectbase.Swarm;
; m# P3 w2 m  e; I) j; Nimport swarm.activity.ScheduleImpl;
1 u3 J9 k3 d0 ]import swarm.activity.Activity;
1 Q  B5 e: W. T2 Y' O# ?/ z; jimport swarm.activity.ActionGroupImpl;+ q: n: p# N# n2 m; ~
import swarm.collections.ListImpl;
- z. A; }0 k# @9 c% Gimport swarm.defobj.Zone;   W: L( n1 O& x' `! V8 C
import swarm.Globals;' q: Y0 i6 t% E+ q. t' T- p% ^5 }
import swarm.Selector;' f$ q  g' ]7 H8 @  s
import swarm.activity.ActionGroup; & ]- ~" `' G! F& H' Q4 g
class Agent {, l5 |5 `; r5 ^/ w/ Y4 T% H+ ?
        char id;5 ^& o) E' m" y; d2 h
$ h# {4 g/ R$ i: W. @1 K
        Agent(char id) {
& z  }; Y9 L9 X: p5 `) T# D                this.id = id;" N2 x5 B; l' j$ t6 }% p) a, E
        }
* d) ]  G: I" I
, L, R. H0 T1 E* ^: B- L        public void agentStep() {
6 O' C" j" P1 Z) L: A                System.out.println(id + ":" + Globals.env.getCurrentTime());
3 Z; k. ~+ `. Z, m. S        }0 i" v6 k% d* e
}
3 f5 b. \4 ^! I, n
3 O2 [7 i; ?; I: M$ Tpublic class ActionGroupDemo extends SwarmImpl {- d) B$ v" a8 _6 Y# I" F
        ScheduleImpl schedule;0 F# Q+ G0 _4 r9 J
        ActionGroupImpl actionGroup;
  B$ \2 E1 j0 b9 O. J$ r        ListImpl list;# ~" m5 z- W) X% e- t" q  e
        char Id = 'a';' _8 [3 Y; U: B) }9 d

& Z% V( \3 i5 S: @" _$ Y0 T3 u        ActionGroupDemo(Zone aZone) {
" o; q1 z. b7 f5 D* _7 w                super(aZone);
9 b/ M) ?! T0 q; s/ d                list = new ListImpl(aZone);
$ c: H& {& c0 N9 J4 `                swarmSetp();' f$ i: U$ [9 ?# Y+ x2 H: ]
                actionGroup = new ActionGroupImpl(aZone);( K- i' H. m0 O) N: x
                schedule = new ScheduleImpl(aZone);
) [$ O5 T6 R" t3 ]0 ]                try {
7 g. a: _* X: C                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 b7 @  D1 N) J% {/ N# o                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 s1 R5 a8 \7 Q' E, u                        ' n0 g/ g! z$ H: H6 m
                        actionGroup.createActionForEach$message(list, agentSel);  I& I% x; F1 O/ {4 E! w
                        actionGroup.createActionTo$message(this, swarmSel);
( T0 ~0 ?3 l1 M! H                        schedule.at$createAction(0, actionGroup);
% J( x4 H) ~0 {4 h( }                        schedule.at$createAction(1, actionGroup);
( Y- |  [+ d) ~! j# z) a& e* H                        schedule.at$createAction(2, actionGroup);: j3 m$ q% D4 \( [" S
" @0 z$ [" z, q! l
                } catch (Exception e) {& Z% g0 P' U6 _: U& @; }( J2 t
                        e.printStackTrace(System.err);& E# H( G7 h! W; q' W: W$ C6 i* K
                        //System.out.println(e);/ e1 z$ }7 a) i% W1 F" R. Z
                        System.exit(1);5 ?0 i  \6 c' ~! s' r- z
                }
: K6 {" u; w  I( U5 w
1 v, e& q3 H# D7 X( Z7 s8 S8 p+ X7 ^" T$ `: q
        }6 c' m4 u9 V" E

7 V4 z4 z1 B, S        private void swarmSetp() {
; \- m+ u6 ^1 u  p2 a                list.addLast(new Agent(Id));% |9 l& ?# w) f
                Id++;. a2 w4 d2 q0 |5 d3 u2 r
        }
6 L; j* @, X/ @, ~/ L/ G
' ]  \- B* Y! K7 ?, @$ S( n        public Activity activateIn(Swarm context) {. L4 q: o1 A: m8 Z/ N1 W
                super.activateIn(context);
. Z2 o4 Y" f7 P                schedule.activateIn(this);$ N- E- E, y0 L/ ]& v4 ?& ?, B4 g
                return getActivity();
5 F# c$ S( I5 x" Z/ L( _" Z: n1 Z, B        }
# X- o. O" w5 _2 v) X2 n" \5 Q: ~8 j: E  O6 I1 Y
        public static void main(String[] args) {
# B$ g" m6 W" Q$ _  h  D                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" }+ v# n4 Y+ }) m8 {# I$ y$ C
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);3 w* b" Z2 e" `1 R+ s0 G
                swarms.buildObjects();
6 X% r' r5 I& N2 ]8 `                swarms.buildActions();; _3 \6 M; u" ^+ L  i3 w& j" S
                swarms.activateIn(null).run();
, `) `  C3 y; e7 V( ]        }
" @3 U9 F2 R2 k3 O( n
$ s0 @0 V; A- ?' b6 ^8 {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-18 01:40 , Processed in 0.013852 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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