设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13869|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 n1 W+ N' Q% U7 q% y
5 e3 Q' X& N# f; o4 A, H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update214 X% k& I2 I/ c# s6 e% }6 X2 m
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) e2 {4 g4 @  B! x9 M- B
swarm.SignatureNotFoundException# I( x" e1 t/ f. o
        at swarm.Selector.<init>(Selector.java:76)2 V: _4 X6 W) x4 W+ O' O2 S: g8 |
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). C6 v2 v( v! Y! v; b
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
) i0 ~0 W' A2 z8 _# |5 D9 V$ @1 T% h7 O

3 Z' k3 V' s9 H  o. fimport swarm.objectbase.SwarmImpl;7 [7 w$ H- w6 K% w2 _7 N: B3 e! i
import swarm.objectbase.Swarm;$ j- n: q) n6 B- p! ?
import swarm.activity.ScheduleImpl;
3 s1 p3 P) }: T1 r/ vimport swarm.activity.Activity;; R# n: v, G/ d
import swarm.activity.ActionGroupImpl;; F" J$ U2 E4 @( b% t# p
import swarm.collections.ListImpl;
# Z* K( g# k0 M- T. ~* z4 [import swarm.defobj.Zone; 5 g, s: J/ F" u1 C4 X7 w; B, B- l
import swarm.Globals;- W2 k/ G# [* ]: y$ s
import swarm.Selector;7 S7 X) F  B+ |0 N2 b& d! U
import swarm.activity.ActionGroup;
" h5 E; r/ l+ Q( yclass Agent {
& i0 q' C3 p. Y$ u) C( Q        char id;+ b# d+ @6 l; V6 v

* ~3 ]) [! t2 m5 |        Agent(char id) {5 C  v/ X, N$ b/ ?2 |" x6 j# c
                this.id = id;
1 G( a3 S1 Y: A) f        }1 G9 }2 D# q# [4 h# h; T& t( M

3 ~6 }2 a( W/ |* j- J9 X4 ]& N        public void agentStep() {) a2 R% m# y% v
                System.out.println(id + ":" + Globals.env.getCurrentTime());3 ~3 [, m. N! T. W  [
        }
4 i- q% o: n& V4 u  i1 Q}( ~' L& V0 ^) W, X8 m  e& R

9 m" a1 O- X+ B$ R- @public class ActionGroupDemo extends SwarmImpl {
( i, ]: R' _) m/ H        ScheduleImpl schedule;% R' i5 k0 v3 k) Z3 D
        ActionGroupImpl actionGroup;
6 l2 J: L5 Y- s$ S4 C0 H8 U; H5 @1 r/ L        ListImpl list;
1 L8 \. q' Z3 z" \& S6 |        char Id = 'a';
4 a; f) h( P" z+ B# t% f
1 M5 D" }5 D9 C% n. h! o        ActionGroupDemo(Zone aZone) {
$ {, B$ l0 H2 j3 E# y                super(aZone);3 Y5 Y* V0 J2 J7 L
                list = new ListImpl(aZone);4 Z3 M# F& K1 W, N+ _% ?5 \' I
                swarmSetp();
! G6 n7 [9 Q) h$ d7 ]! k0 @# H                actionGroup = new ActionGroupImpl(aZone);
) \5 Y$ i+ b3 o/ K6 b                schedule = new ScheduleImpl(aZone);
9 Q( }- R& t  R3 N$ [# F: M4 k9 r$ n                try {
0 |, s8 @4 U" D                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ K7 z) K9 `6 R7 R9 D: m5 N5 Y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行- b/ u' a. P1 o* K3 B2 u; q
                        
* t& W: q) e0 C7 L                        actionGroup.createActionForEach$message(list, agentSel);
8 k0 U+ e& g$ v2 j                        actionGroup.createActionTo$message(this, swarmSel);0 o' h5 y: K) x" C( y# N
                        schedule.at$createAction(0, actionGroup);
, ?' s6 l7 m9 _8 ]                        schedule.at$createAction(1, actionGroup);) i; _9 t/ d! O: E6 V* A
                        schedule.at$createAction(2, actionGroup);
4 Q* w( b" F, }, @$ q/ @1 k5 K: M2 |2 Y/ R2 {
                } catch (Exception e) {7 V& x' E" a3 J  O; ]$ c. z- p
                        e.printStackTrace(System.err);2 {2 q% z. L$ Q" X7 @
                        //System.out.println(e);, i* z4 w9 d; k5 q+ S2 y; X: R& y& K
                        System.exit(1);4 M: W/ ~  O4 j1 a
                }+ n# ~1 I# O* F$ J1 l6 a
* \/ m9 d8 l. [( g
8 y: p% |; K" {! }
        }
, A% q: v& A8 j- \- R4 c) }) ~: @0 a2 x5 e/ U# ~  t: Q; j
        private void swarmSetp() {; @! ^  t. D' O& P5 v0 v
                list.addLast(new Agent(Id));
1 d# f2 ~3 D; I) Z. h                Id++;
& {  m1 c1 _8 B( c, v8 ?' M' v        }3 l/ `! o% T6 h

$ r4 P7 l. B) P1 u0 h" z' G% f        public Activity activateIn(Swarm context) {" Y' W6 }+ D4 B/ |8 c
                super.activateIn(context);
# L% D1 w+ N) G                schedule.activateIn(this);% u8 F* w: _5 x
                return getActivity();
% J  g* G4 Z) `0 {- p        }
. k' C& C. n  o8 r. N% R
, [& b0 y7 T5 i5 `# H  v0 C        public static void main(String[] args) {
. \+ z6 B: [6 u. i* e1 I9 s$ B. \* O                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ a8 P- O2 X) Y. Y6 ]                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, e  w) s& I$ r+ U8 ^4 f                swarms.buildObjects();# e' H+ ?* t, d) ^1 t
                swarms.buildActions();
+ @% k! {4 J- b3 B; r0 b" D  U1 x) }                swarms.activateIn(null).run();
, e5 m5 h: I. U6 y        }
6 V1 P3 \/ l! v$ a" u; v5 F; v( g
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-20 06:50 , Processed in 0.013921 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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