设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8412|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
* |5 z* r3 q6 P+ l' X, O
4 ]9 m/ x( x2 p; o本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) g% m; Z. Q) ?2 A
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.8 |. \! @& |( F
swarm.SignatureNotFoundException. u% y$ S! s. w7 l6 \
        at swarm.Selector.<init>(Selector.java:76)
! }, f+ x3 P8 ?! _$ c        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)4 `4 ?) E2 L+ G% j6 ?7 f* A' K3 i
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
0 p- b5 o+ K. g
2 R( ?4 Y: u6 `/ `& ?1 D  p7 w& C4 [6 Y% Z2 ?( a+ k
import swarm.objectbase.SwarmImpl;9 Q! T! {  q: \0 j* y3 k
import swarm.objectbase.Swarm;
* Z% P  Q( `0 J2 G! }$ f$ ?, Cimport swarm.activity.ScheduleImpl;0 h1 b8 {8 k8 y
import swarm.activity.Activity;
3 [) q. c# [# M: pimport swarm.activity.ActionGroupImpl;4 i, n: F5 H  v0 V* p$ b2 o5 @
import swarm.collections.ListImpl;
+ t# @1 B; G9 Z& x" I1 S& M- gimport swarm.defobj.Zone;
2 x3 D! L/ S5 l& w1 u. Z9 Eimport swarm.Globals;0 V6 {+ ^+ {, W, i0 l# L
import swarm.Selector;
- K* o" x2 r, N$ ?# `import swarm.activity.ActionGroup; ' I; [: Q) \  H3 ^1 w7 [) M
class Agent {# L3 I% `2 C9 B" N. S: R: q. V$ m
        char id;9 s  I+ h  ~& q* R" b1 s
' |9 p1 l- r. @# B3 ?
        Agent(char id) {
' C0 e8 \% _! Y" T                this.id = id;, r' @2 w" T3 o, q0 x
        }5 e' V, g6 f) O# M. i

' k' |# C) l) M) P* ~. Q/ u' d7 j' G        public void agentStep() {
0 ?" R' s! V- v" Y! K                System.out.println(id + ":" + Globals.env.getCurrentTime());
- Y( Y& H1 |1 v        }# H1 h$ |# V  t1 s% u' |) {
}
# @% {: A5 P9 f  I" C* h" m5 q" `6 r7 Q
public class ActionGroupDemo extends SwarmImpl {/ ?  G: e+ O% k. V$ y
        ScheduleImpl schedule;
; O+ _$ G: c9 ]4 z# s        ActionGroupImpl actionGroup;* J9 T) m* a4 v+ u
        ListImpl list;& _8 W# R' c( R! z" g. e1 B
        char Id = 'a';! N% ~- p' n# q6 w0 t* w' @7 Q# t

* M. W9 n& S: f' J; ~  K        ActionGroupDemo(Zone aZone) {8 j$ f# \% u* Q& F) A: C/ r
                super(aZone);: C9 n: J& J+ S% h) t
                list = new ListImpl(aZone);0 v- O* y& b, o
                swarmSetp();) q2 _1 t1 ]; ~7 [0 h
                actionGroup = new ActionGroupImpl(aZone);
$ l5 M- O5 R' J& i1 S                schedule = new ScheduleImpl(aZone);
  Y. M. G. Q2 p2 _6 W- B& `                try {, q( d  N- a/ _5 `
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ A1 ^$ q- J: S% j/ _* b                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 r$ ?; \' t9 r, D: m' D
                        
' w- [' B# h2 r  r8 @                        actionGroup.createActionForEach$message(list, agentSel);) k1 ?; L& M2 J1 |2 Y6 L" z
                        actionGroup.createActionTo$message(this, swarmSel);
( E  V' G" |; R) Y9 W& a                        schedule.at$createAction(0, actionGroup);  X+ P$ x& i9 y, n% I
                        schedule.at$createAction(1, actionGroup);) ~' U$ f& E# L. }. d+ N
                        schedule.at$createAction(2, actionGroup);" I. s  a0 g1 X4 w
6 p+ M5 Y' U- G2 C
                } catch (Exception e) {
7 M7 K1 w% p: G) G                        e.printStackTrace(System.err);( o7 Q7 M) s& ~0 M8 U2 b
                        //System.out.println(e);
" d( _, Z& b: j1 ?9 L                        System.exit(1);
! z2 C: ?4 o/ B' P" w! R                }5 t8 o0 H9 j% U) @

9 ^/ }8 ~2 B; N
$ M" @. \' i; m( E1 k/ W1 L        }$ {2 y4 R* |( _. u! r

0 d* s# D0 i! w+ @        private void swarmSetp() {) v7 I: g7 `2 ]
                list.addLast(new Agent(Id));
* l$ m  J4 Y. z  g; {9 x                Id++;1 [" O5 }/ s! M- G4 F) K
        }( E) Y7 h2 T0 ?! Q2 l) J+ ^

/ R9 ]% H/ I0 h4 I" y. D        public Activity activateIn(Swarm context) {/ o6 N- D  Z( r4 i% x% K
                super.activateIn(context);$ t/ ]8 f% M; h  b& {1 }; X0 ^
                schedule.activateIn(this);
7 |1 B6 m% ^2 ]                return getActivity();0 V* E! d& b; y$ n) q
        }
9 T1 _9 I$ @0 V( R
8 y) z8 a8 H( q        public static void main(String[] args) {
8 _6 d% A) E3 q+ ]                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- K. ?& g5 u/ Z6 k1 ?+ E/ c
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& ]4 x4 P- @1 @7 Y, C
                swarms.buildObjects();
0 k; q% T" ]3 @* ^% A" P0 H; [0 F5 @  d5 a                swarms.buildActions();" J# @& [9 e0 z' S- f: A
                swarms.activateIn(null).run();. P- _8 W& K% K1 F8 W) L7 L$ F
        }
* e7 H# E6 a$ v! G% H, q" r; T0 K+ H
! c# c2 ~- u3 T! d2 M0 k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-11 10:41 , Processed in 0.018750 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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