设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8479|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
) p4 u& b" Y! `% d( y9 J$ ]
: c6 s' A# c" N$ B: H$ H0 a本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, J( c. M) X3 }以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ V( B" H3 S, r- b) U& Eswarm.SignatureNotFoundException
- d/ }/ N4 ~; o        at swarm.Selector.<init>(Selector.java:76)+ W2 `2 R3 |' n0 e( ^* Y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)  a0 G  g; c( p( a& p
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 v- N( z% v+ L( T4 E) A3 ^: X9 r3 j" G8 k
' a% V* t: p% i* A: J. u
import swarm.objectbase.SwarmImpl;
& @/ f) r5 G$ H2 Z. K. G9 Ximport swarm.objectbase.Swarm;
1 P' z  q% z3 ^- s; timport swarm.activity.ScheduleImpl;) _8 D+ e! c; K
import swarm.activity.Activity;* C% ]$ G! x0 C/ k8 c
import swarm.activity.ActionGroupImpl;
6 s  c( ?- e( _! l! Z3 o+ b: dimport swarm.collections.ListImpl;5 _7 a' t# M' F
import swarm.defobj.Zone; 4 M+ `& I  s7 ^
import swarm.Globals;; E6 r2 n" Y+ `. n" P9 Z
import swarm.Selector;/ L2 a) B$ o% \  |
import swarm.activity.ActionGroup; % ~6 s2 r" O% _+ u
class Agent {- m' A8 Z" R3 g' e8 c1 A" R
        char id;! H2 o3 Y; L; }/ ^
. E' y/ ]9 i# h; s4 C- J
        Agent(char id) {
: l, U5 k0 U7 A2 \* s* G0 I; p5 m                this.id = id;: }. R4 e1 h# J" h5 D" m$ k5 c
        }, ], t) P  R4 y" A

& U" f# F4 `/ Q: ~6 ^7 `" a        public void agentStep() {
' @# H3 B; a# {0 I8 W                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 V, B- Z! X3 v        }
  Y3 r( l& r' u2 }" e, a4 S7 S}
+ T1 ~8 U, X$ J# Y* @- R, U* h# y, ]7 K0 P9 x
public class ActionGroupDemo extends SwarmImpl {
  E3 T1 y$ |: U. S/ d1 ^- Q0 k7 ]0 ^' I        ScheduleImpl schedule;( v6 w7 N3 d: A1 z& w; L' C: k
        ActionGroupImpl actionGroup;# P2 m* ?9 J$ N: j
        ListImpl list;. n: ?1 _9 ?# |! @
        char Id = 'a';% t: n* v1 _$ T9 ?/ }% o
: a# w* a' Y+ Y
        ActionGroupDemo(Zone aZone) {
: ~8 Z4 y8 B/ y6 O0 W                super(aZone);: y0 W$ N% P  k) x* j5 R
                list = new ListImpl(aZone);" P/ o# A/ C. B
                swarmSetp();
' h: R8 y8 g. ?! M# Z8 s5 ^& {                actionGroup = new ActionGroupImpl(aZone);9 W3 C7 b( J+ {* o6 K
                schedule = new ScheduleImpl(aZone);
5 a# J8 s$ j8 \& l7 S; I# j                try {4 L( a$ }8 _0 g4 a/ }
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 T! w. }6 ~6 u- ^" c( v# v                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行, O5 ~& f/ _9 n: ~
                        
  O' q2 N& F/ e4 ^/ b                        actionGroup.createActionForEach$message(list, agentSel);
# {6 u7 k. a6 N. r0 P                        actionGroup.createActionTo$message(this, swarmSel);) j) {! U6 M3 [% f; {
                        schedule.at$createAction(0, actionGroup);
+ |6 o& h& a: y' C" d6 v# i6 _/ m5 r                        schedule.at$createAction(1, actionGroup);3 B, r/ k- B& d( [9 W! k/ ~+ {
                        schedule.at$createAction(2, actionGroup);0 r- |# c3 K( ^- |
1 A& Q# c! [% L& R4 k0 |
                } catch (Exception e) {
( C4 N6 N" S9 @                        e.printStackTrace(System.err);5 s, Z* F) T, }2 _! ^8 J
                        //System.out.println(e);
1 l1 z& K3 d; p" y                        System.exit(1);9 t3 {, t" e6 Z6 y5 O, U3 \7 s7 h5 t
                }0 f+ z7 n( E; r1 s: s, [5 s

# H5 P# G3 a1 H" y: g+ @3 T" F' A6 l, G+ ]7 [
        }
0 ^% k9 Z/ q7 w+ ~, ]
+ y9 \* |: s( l* @4 h  m; P        private void swarmSetp() {
3 n( |- ^6 m3 u3 b8 ~! Q* B3 g2 K" m                list.addLast(new Agent(Id));- t3 U9 x! \. e
                Id++;( X* ^8 ]1 q' L. o
        }' A! p3 ^3 v9 @. ?7 u

- F" A( q5 M+ v( F( f0 t; N        public Activity activateIn(Swarm context) {
) g( g) W8 \( y/ C! f1 I                super.activateIn(context);
; f+ f; g/ P+ g2 R+ s                schedule.activateIn(this);
" v( e) ^4 H! I8 z  }                return getActivity();# s) L+ Q) w/ m5 Q% g! j
        }
" y  c: W# F- ?6 ^& \2 V1 y% `6 c5 Y8 S0 v
        public static void main(String[] args) {2 N8 N" L5 j  B4 X8 C* z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) _0 d! K- W% N. |2 j- g% n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);& ]7 \7 U4 f* a- {1 ~
                swarms.buildObjects();7 A& F1 ~2 }/ n9 ^
                swarms.buildActions();
% R! {, p" _, S( |) i3 R                swarms.activateIn(null).run();) Q& E1 A+ M5 g
        }8 J0 ]5 s( K6 c9 Y

3 v9 i$ F6 P+ b1 {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-13 17:20 , Processed in 0.016915 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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