设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6881|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 e  L! [4 b7 f% B! P! b
. W2 I+ ]* o  i, v6 b3 B7 V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 R  @; U2 x9 ~- F6 G# x% m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 D. _- u+ ]5 z; M& B
swarm.SignatureNotFoundException
/ |" B2 ?% l3 n# {        at swarm.Selector.<init>(Selector.java:76)
: D! |4 ?& g1 S& c4 O/ t* }. V        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; f/ _* Q# k6 ?+ W9 f4 x2 a1 n# j        at ActionGroupDemo.main(ActionGroupDemo.java:67)$ S% A" J. k) g  ?# k

) e& F% i2 A" I; F) U9 C
9 N1 A9 I7 g5 F/ ximport swarm.objectbase.SwarmImpl;
8 C$ d: w. d" \' O4 _import swarm.objectbase.Swarm;
" p. W, k$ \+ A. j1 A) u$ ~4 Himport swarm.activity.ScheduleImpl;
( H- G- g% l1 c! Bimport swarm.activity.Activity;
, `* V+ j9 W1 D" Limport swarm.activity.ActionGroupImpl;6 |1 r; g# s& X9 q& n' n5 S6 R
import swarm.collections.ListImpl;9 R$ Y* [1 P. V  N9 ?' q6 D+ }0 s
import swarm.defobj.Zone;
$ t/ g9 M: d  Q9 r4 A6 x; bimport swarm.Globals;
) g5 g3 Y9 R7 s6 O0 A) n+ Y) \import swarm.Selector;
* C0 M/ b8 n3 Y7 Q. i" y6 ^2 M, \import swarm.activity.ActionGroup; 7 a% q' \& I$ C8 Q4 W! [
class Agent {
5 e) ]$ S+ J8 f1 \" L  y        char id;! K" |; h+ l; a; U! ~! K  u& x% u
7 ]1 ?3 |; _. d( ]6 s
        Agent(char id) {
* }" ~0 q9 w: ^" L: v- c8 Y# d                this.id = id;; _* {6 [$ c% B6 v9 x, O
        }
& G* g( o; A2 b$ @9 y& E7 O. d" R! ~9 B% v6 ?* h. E
        public void agentStep() {7 e/ I. L  z6 q* Y) Y5 {# Z2 {- M
                System.out.println(id + ":" + Globals.env.getCurrentTime());  A6 j; ~7 ~" ^& X2 k# V0 H: r2 C
        }/ f) P7 h% I0 r" ?& q& u2 Z4 S
}6 ~1 O$ R0 y  V; n, o$ `" t3 ]

& F3 a- B0 g4 a# U5 Mpublic class ActionGroupDemo extends SwarmImpl {
7 N+ m; C' K6 V1 p) h' o- V: o5 }        ScheduleImpl schedule;
- a$ b" S: P7 P        ActionGroupImpl actionGroup;
. O) W; L# r+ y; O3 G2 [% m3 j        ListImpl list;
5 i9 f! D$ G9 E; \# n& b) c        char Id = 'a';" {1 J2 F* _  B
* v% ?! B$ F8 X3 U
        ActionGroupDemo(Zone aZone) {, V- ^2 _  z) n8 p' C
                super(aZone);
4 i5 S  H. U; l                list = new ListImpl(aZone);) q$ a, `9 H, x& Z- J. c% z
                swarmSetp();
1 O) T2 D, C0 h! q' z                actionGroup = new ActionGroupImpl(aZone);1 Q# f, b1 i- i, P' T
                schedule = new ScheduleImpl(aZone);
6 y) B) u1 k* l, B                try {0 \& z" }9 R, F& `( Y8 [
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 \* I3 k, O1 o, F9 F0 V, s, z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' l: Z1 b" r( m1 h+ y# ?4 P. J                        
2 h; X8 ^* e" U+ E+ c% K( |- U$ Q                        actionGroup.createActionForEach$message(list, agentSel);& e0 W' F; v1 z5 I, E
                        actionGroup.createActionTo$message(this, swarmSel);- b0 I5 g' d/ p! g; f* X3 }
                        schedule.at$createAction(0, actionGroup);
0 u; U  G$ A0 U& ?) N                        schedule.at$createAction(1, actionGroup);
0 b: L& m) Q) J+ h                        schedule.at$createAction(2, actionGroup);
( l7 m9 C" e0 w- G& t# i8 K7 g+ |( P8 }* l& k0 H
                } catch (Exception e) {
1 @( ]5 ?/ e* |! B                        e.printStackTrace(System.err);
6 Q: J& z4 l1 z  A7 N7 q6 h* K7 V                        //System.out.println(e);
. l$ T; |; }+ J- m                        System.exit(1);( a9 N9 i4 ]" f1 F  l6 R
                }
6 e/ Y7 U8 g; _3 k3 P& T
$ B6 {5 A5 w- o. Z
7 z: X/ o% p! a3 X        }3 }- v0 P! F% b$ @) P# o
: d, Y7 [: m/ T0 I0 C7 \/ {
        private void swarmSetp() {" ~2 v6 n3 B5 |$ M& }8 Z" }  ?
                list.addLast(new Agent(Id));
) C7 X, g3 _2 Z0 T                Id++;
! W6 w. y' A: t# o. o2 |& c        }
% V+ m) K" d8 b2 J9 X' n5 L4 C: h4 e( q* M( U
        public Activity activateIn(Swarm context) {: t# c5 j" P) V* w1 h- ?! f* v
                super.activateIn(context);
+ }5 S9 J) C/ r0 J2 K                schedule.activateIn(this);0 d$ Q: l( T; ~0 u7 e: [
                return getActivity();3 X" @8 L1 y* U# e7 s
        }
8 A" u, ]2 Q# l$ Y
" k' H& W8 p" e' V5 L        public static void main(String[] args) {
. F5 K- o. G1 I6 z: d3 |- j                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);7 ^- ^- D7 M7 J9 @- J- F
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% {2 f1 E: m$ D4 l                swarms.buildObjects();, g% A& F; m0 F' }1 }3 V9 @" o
                swarms.buildActions();' X' G7 V: U6 }4 C. M
                swarms.activateIn(null).run();: Y7 h- l- S1 j
        }* k6 ]" I3 M3 k4 a
7 G. c  Q$ B! {6 |
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-12 03:18 , Processed in 0.018126 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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