设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9946|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) |. V5 k9 G1 Q
- j0 M: }; I4 f' J" n' q5 S* m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: }, _4 X1 ]  M8 @: R0 R" }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- @! G6 i% b; x6 c' F* _6 M: T6 A& N- c
swarm.SignatureNotFoundException# [; r5 p' ]6 M) j* U' k: u4 Q' J
        at swarm.Selector.<init>(Selector.java:76)  ^+ u& A0 p" c  \
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ F' V2 _! p6 H% F. W4 K1 {6 V" M
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ u, \. n  b- n2 I- O
( y% P0 E" p7 m% L1 ?2 F3 p8 F
* L& Z5 ]" h5 F4 ximport swarm.objectbase.SwarmImpl;6 U: ]6 q1 l- x* e1 D: A: _+ [: Y
import swarm.objectbase.Swarm;
" b* n# |+ p3 I6 e1 {1 b/ Himport swarm.activity.ScheduleImpl;
/ \, Z3 ^' m6 y* `2 e- l7 Oimport swarm.activity.Activity;# O: K& L8 e, t9 q7 }1 m9 r
import swarm.activity.ActionGroupImpl;
& V9 D7 G/ q6 p. ~! v- Z, Uimport swarm.collections.ListImpl;
0 t! W- D. k1 G; P  J0 I- nimport swarm.defobj.Zone;
: s: X, s; |. h& o' {- H+ himport swarm.Globals;
/ F4 j5 n! _4 p& }import swarm.Selector;6 C. C4 y) ?8 q; m; `
import swarm.activity.ActionGroup; : k- r3 G  _0 e% W/ ]- O# G' T3 e) `
class Agent {
9 h; c5 v; |' V3 L% A" g4 p9 f        char id;, p& j5 E: K0 R- N
+ m3 t7 V( ]8 R$ d* a# u. G* j
        Agent(char id) {6 b; @! y" t/ \, @2 e; K
                this.id = id;6 k: y9 ^6 {: x+ ]
        }" y$ T, }, Z1 N- P" t& t; g
$ l" o& j$ p0 G' x( p" ^+ Z
        public void agentStep() {3 F9 q4 y" x& T( ]' x) m. a
                System.out.println(id + ":" + Globals.env.getCurrentTime());* D* b: T& D* Y# e. d) J0 A
        }! \( {9 Y# z  e3 d, B) j
}
. Y5 H1 J0 R) y. g' ^4 t0 U" D8 E5 I" w0 e7 E
public class ActionGroupDemo extends SwarmImpl {" \% m2 j: C& O+ S# {' G
        ScheduleImpl schedule;
+ Q( W5 f; \% U# ~, ], e& X        ActionGroupImpl actionGroup;
! }9 o0 h9 S) ]! Y- H$ A) ~: ~        ListImpl list;" X8 W4 V  ^4 F5 ~- v: \
        char Id = 'a';- V) a7 {5 Z  m1 w! Q) x, S

/ `- s& L/ v' ^        ActionGroupDemo(Zone aZone) {
; q+ y; z2 Y# j( \. T7 y, G  U                super(aZone);$ a) p9 a' k% C4 r8 H) U
                list = new ListImpl(aZone);# o; `- s5 P# h2 A! a* L& T
                swarmSetp();' p. d$ u/ L  i! h
                actionGroup = new ActionGroupImpl(aZone);
$ J" M2 x1 H. @" ~3 i. Z  T: |" c                schedule = new ScheduleImpl(aZone);
. C' H" ]7 k0 R# t                try {2 x* ~. K, S' P% V; ~) o
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- S9 l4 |2 I1 X9 v, h
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 D' x9 L( Z. Q" E
                        
# h7 ~$ R& m% a                        actionGroup.createActionForEach$message(list, agentSel);
' A# F5 C4 G1 U! d                        actionGroup.createActionTo$message(this, swarmSel);/ V/ a, I9 Q4 l7 z
                        schedule.at$createAction(0, actionGroup);+ A; |1 ~$ H/ {: V7 s) K2 N
                        schedule.at$createAction(1, actionGroup);* ]) u  e4 K. t+ y8 Y. i9 p% X9 _7 Q( T
                        schedule.at$createAction(2, actionGroup);
6 g  P# p2 r; V1 q
0 t$ ~' N5 w, ~                } catch (Exception e) {( j+ x' c5 f; v) Z
                        e.printStackTrace(System.err);- e( R6 l8 O+ A* ?1 j, D' s
                        //System.out.println(e);
# K. q8 D- F2 n$ r! f  ^5 U6 R                        System.exit(1);) G: w; d* [, P% ^% U3 q
                }
$ p. H- ~0 N6 ]8 R6 s$ n% V/ `" B, P- _8 g8 b6 n! \

9 R8 e  D: M' V7 _% Y8 n$ y        }
0 \3 J) D  r0 t8 `5 F0 z0 }1 u$ L: C
        private void swarmSetp() {3 s/ A: I# `1 F0 d7 Y( b
                list.addLast(new Agent(Id));3 ~% [+ O/ \6 B* @
                Id++;
) _% f- \4 S" k5 B5 z' k- l        }
5 p# L0 d# e+ L% Q9 V0 v2 e. d1 W9 t% e& p9 S# Y; [0 i9 }
        public Activity activateIn(Swarm context) {
$ \$ I' b" Z5 a                super.activateIn(context);6 G4 K# ]3 f7 |) H, T$ H
                schedule.activateIn(this);" m. U9 `5 h+ G( e( @) T" g
                return getActivity();+ E7 H9 A$ a$ S
        }; x: D0 s6 T1 b
) I1 n% a* m( {' [3 d7 L
        public static void main(String[] args) {  i! A9 k6 H, K# Q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 A4 _7 I& q/ u8 e% s                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 g% R1 G; t1 I# l4 z
                swarms.buildObjects();' t" Y# `5 @# i8 @
                swarms.buildActions();
3 _% V2 z: ^+ L                swarms.activateIn(null).run();6 @2 }( F0 n4 D, m1 X) a3 d
        }6 M# H0 h% b+ M0 a
* Q; Z- u* ]3 }6 Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-28 20:21 , Processed in 0.018388 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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