设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11155|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
# L! c3 W! ]( n4 G- p/ C5 S% P: g( }& A% b) q  X
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21( w, N) ^+ \+ _5 x4 C
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 M) H  z! U, \' q$ d
swarm.SignatureNotFoundException! t* J& i$ B- q& z! y1 D7 u9 c: s5 ~4 r
        at swarm.Selector.<init>(Selector.java:76)* F1 w- M: S$ W. |% v
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
+ p0 N$ m4 t. r* S' D% U" W        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# ~, J* _( Z1 l$ B8 C+ R; c/ b' ?+ w' b, U6 L0 _" f2 L
, V( w: F! m$ s5 H
import swarm.objectbase.SwarmImpl;
+ \1 p* S- n+ ^* F& {import swarm.objectbase.Swarm;8 P) h! w# J0 s& z" s6 h
import swarm.activity.ScheduleImpl;8 G/ [9 x+ r5 ]' r
import swarm.activity.Activity;. Q9 R  i9 e8 x
import swarm.activity.ActionGroupImpl;
$ M- Z" ?% M0 `4 A' kimport swarm.collections.ListImpl;
4 E( x  }1 k8 [" i1 Gimport swarm.defobj.Zone;
# R) o# }* w! w' _import swarm.Globals;7 ^- O+ r& ^* G  d0 k; R* g
import swarm.Selector;& v0 d# j5 a6 C
import swarm.activity.ActionGroup; & F9 c/ m$ F1 Z! |3 y& _1 G0 o
class Agent {
* ~+ W: ]& }3 R% r% B$ a4 P        char id;: u2 o8 K' t8 J# ]9 Q7 _1 j. E
& j* E: c& H  q5 G$ H
        Agent(char id) {
9 Z" N( ]8 g/ Q& j; A5 L/ o                this.id = id;# b+ j3 ~) Q  |8 W& u, L
        }2 q& h# d, t; e& `$ V8 j
; N5 R" z' C  S& N; ]
        public void agentStep() {& z  }7 j: K6 r" ~( N3 g# R
                System.out.println(id + ":" + Globals.env.getCurrentTime());
8 p# R. f& z' s4 T$ C% i        }
2 K* k3 E6 ^/ i5 r' L0 C+ A4 o}% _* ^2 }' S  x; L

9 _$ [3 L! J; ~  x% ?9 _public class ActionGroupDemo extends SwarmImpl {( p8 |/ \6 W  R% n
        ScheduleImpl schedule;; h# U1 c9 O4 l/ B' c
        ActionGroupImpl actionGroup;  {( z' B% g# j) O: f
        ListImpl list;
/ U0 I& b* L! ]6 A: r/ {        char Id = 'a';0 r" M; |2 R& H2 G+ b, c7 G% r
' J2 L9 |+ F2 s( [) _
        ActionGroupDemo(Zone aZone) {
2 W( B' s0 r1 t4 w                super(aZone);
( m2 Q- m: m& D                list = new ListImpl(aZone);$ [! ?- {0 h, Z: H. R, i+ ^5 ~
                swarmSetp();
9 L( T( W2 D0 q" X                actionGroup = new ActionGroupImpl(aZone);
! ?( X# T% M4 P; N, T                schedule = new ScheduleImpl(aZone);
# o9 m! L4 D& Z/ V8 V                try {
6 c  L: G$ E  P/ e3 t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
! o) Z# U. t9 M+ o7 P1 i3 p* L                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% K# H: i0 v( t0 H" z6 D9 l7 N1 u
                        $ {% k  g, P' n) ?3 d
                        actionGroup.createActionForEach$message(list, agentSel);
9 G  p- l  Z; {2 g                        actionGroup.createActionTo$message(this, swarmSel);5 D. P& l6 u. O
                        schedule.at$createAction(0, actionGroup);
- M/ }5 ^" q/ J6 M9 X                        schedule.at$createAction(1, actionGroup);4 x( b1 h, i7 N% h8 j
                        schedule.at$createAction(2, actionGroup);1 f0 p  u4 p3 w3 x2 P
+ V# M# w) [) ?
                } catch (Exception e) {/ o  o7 e( L( c- J( N
                        e.printStackTrace(System.err);
0 u% r" W5 d/ |                        //System.out.println(e);; v& P% |2 A5 {6 O; t
                        System.exit(1);' c6 c% f2 l1 U1 q& r6 o# u4 M" V
                }
6 e7 N1 c0 f6 t) G/ n; X# l- g" @( o0 N5 n6 J' n0 ?

( A$ b" P/ Y# v+ o, }# C  w0 i        }7 h/ z& Y' Z$ v) h* T
- q; z. F& L: r6 D
        private void swarmSetp() {
- x4 N* h9 i) P2 \- O. s5 s                list.addLast(new Agent(Id));
7 |" \& b1 s9 d                Id++;. a* o; a% j# N. S6 `
        }
. M6 U7 b. A7 z8 ~; s1 I$ G7 S& @" ~+ p  F
        public Activity activateIn(Swarm context) {
; ]7 l& o0 R7 |                super.activateIn(context);
5 S" w7 s* H/ a                schedule.activateIn(this);
& r: e# L! `# G% [  Q* Q- R" c                return getActivity();$ L- n$ ?" P9 K1 n8 ~
        }; N0 Q1 e* H0 T
: c+ v; B: K6 A& i3 M
        public static void main(String[] args) {
' O4 v" L8 M* D6 h8 j) W# g                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);; t& y) M: {+ m4 i: z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
/ g. }2 _! ?) s. ]                swarms.buildObjects();
5 j  m4 @4 P1 S" x1 Z# r0 e                swarms.buildActions();4 V. o' Z0 |, n( l; j  N
                swarms.activateIn(null).run();# S7 ?: d1 V. \0 C& w5 I" Q
        }3 j2 L+ n% k* L; N  G

& }( X$ o. s# \1 ~% d}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-4 15:17 , Processed in 0.019633 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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