设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9316|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ( @) V3 h0 k" B! R8 n

. w$ [3 D0 \1 |: p$ Z8 O本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21* n0 J  g1 y: L8 @* W  D
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% ~% o4 @- f4 @  T
swarm.SignatureNotFoundException1 j9 O$ a9 u, k5 S
        at swarm.Selector.<init>(Selector.java:76)
9 A9 B6 B' |" z+ D( j% B        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 h9 D; e8 H! t( z1 U        at ActionGroupDemo.main(ActionGroupDemo.java:67)3 f! L0 D3 o( R, _/ x2 N3 t

$ c: F  c2 L* i2 O" ]! r9 X/ _* X- k; B! A3 o
import swarm.objectbase.SwarmImpl;
  A, \2 }  H3 o6 e' Pimport swarm.objectbase.Swarm;
  F8 D9 y7 b& K, R% s" n: bimport swarm.activity.ScheduleImpl;5 G9 h7 j1 P6 D5 a' T/ q1 ~, J3 A: v
import swarm.activity.Activity;1 v1 `# d5 q6 e  \& j; h
import swarm.activity.ActionGroupImpl;3 T! }6 ^2 l4 y, }
import swarm.collections.ListImpl;% E- f& ~  T, N2 ], _2 w" B/ S% _7 }
import swarm.defobj.Zone;
3 w' l: s) i9 s8 d/ {! wimport swarm.Globals;! w% `) C# F/ s8 I2 ^
import swarm.Selector;
& b& ]' V/ \% h2 S; u' e4 a# yimport swarm.activity.ActionGroup; 5 j' x4 `' b- O! g
class Agent {5 N) ]1 Z( x5 o- I/ b7 Z
        char id;
% b8 ^0 v  Q! x3 ]8 C3 }
  q; R; f+ |& U- s. }& w        Agent(char id) {
+ L0 I$ v. i! C1 K. U! q/ k2 C                this.id = id;
7 w6 m; ~8 `1 ]/ u        }
3 ~# N& c1 e2 N
2 g$ [1 E( \8 Z8 S        public void agentStep() {
9 J' D' j  C( L! i1 u3 M# R                System.out.println(id + ":" + Globals.env.getCurrentTime());& ?1 \% n9 R. W; ^
        }6 a& k2 d( c7 y  c
}
+ Y9 u) U& [( F
1 s* `- W6 ~* T" j; O  @public class ActionGroupDemo extends SwarmImpl {
; a5 J2 g% F6 g/ R        ScheduleImpl schedule;8 R" T6 J* g1 w8 d
        ActionGroupImpl actionGroup;% k" ]& j( u' T
        ListImpl list;* ], P, E! c* H
        char Id = 'a';. c: i  x  B0 t# J, O7 ?7 B
) L' s4 L% K: Q: L: y4 \
        ActionGroupDemo(Zone aZone) {
& d: S& l$ o2 r# ~1 G% a                super(aZone);# Z3 h6 m4 R4 Z. n# M( V
                list = new ListImpl(aZone);$ [( v$ y% I1 ^. X  [) X. |( k2 _$ W
                swarmSetp();/ R" v: @/ }% P" v2 D
                actionGroup = new ActionGroupImpl(aZone);
! N. e& D* B7 y4 j% X                schedule = new ScheduleImpl(aZone);! z- K4 |) j* `1 @
                try {3 G0 q" M3 C+ a3 E! N* p
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- m+ d2 {9 m( a
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! R" T( U1 j7 S) o) N
                        
% }3 y+ p  q0 m6 T4 O/ H                        actionGroup.createActionForEach$message(list, agentSel);! b  d9 S8 Q% n/ X% z3 c' j" u
                        actionGroup.createActionTo$message(this, swarmSel);
2 h5 A, w9 W2 X/ D' J$ G1 Q                        schedule.at$createAction(0, actionGroup);
& _. }% i2 V& z: C                        schedule.at$createAction(1, actionGroup);% [. O; ^* c+ {3 f
                        schedule.at$createAction(2, actionGroup);
3 `; t, k9 X. U2 n
5 R9 B  K1 ]5 m; b; G" h( n4 |/ ?                } catch (Exception e) {
( J/ m$ {/ K; G: v+ {; h3 x3 K5 n1 \                        e.printStackTrace(System.err);' C( n' b: v8 w% ~
                        //System.out.println(e);) W. R( Z8 j+ S/ L2 x. e
                        System.exit(1);
5 k7 F1 }+ S' X- ~                }5 \  [$ \; F' }# d2 x7 ~/ r

0 t0 f: D3 \( j5 ~0 B# E' w: c  ?% F0 T. A8 W2 z+ L% ?
        }
4 D' e9 h: j4 {
# _2 ?, F- m6 ^* |5 T( E1 F: T        private void swarmSetp() {0 z) Z; e& e4 T( z' B2 u) ?7 p
                list.addLast(new Agent(Id));* r4 u3 S, P' J3 Q2 L9 y1 B
                Id++;
* U; _" w2 r6 r        }0 p& p9 g( {+ W; b

; t* z! C7 A  V% Q        public Activity activateIn(Swarm context) {
* o7 n; w/ h( @1 e) v                super.activateIn(context);
( Z$ x* ]9 I: K) @/ \3 Z4 _( q+ D/ X                schedule.activateIn(this);5 f$ Z" x3 l2 U
                return getActivity();* e- n# {4 c4 k: p/ z  u4 G
        }% _% A/ @& V) D, _9 h

; s+ W" g, x5 k4 r7 a. s1 {& A  Y        public static void main(String[] args) {+ n9 Z0 ^) c7 x6 d; R: z% g
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  p7 M/ Z6 _9 G( ]3 g' J+ W6 X! m
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  u4 v' o* ]+ Z                swarms.buildObjects();
3 C6 X8 P6 r& ?) W" }                swarms.buildActions();
1 o9 D9 u+ e. n2 b% a5 p& n3 \/ P                swarms.activateIn(null).run();7 A# x, ]( y9 G+ ^7 N8 v. V
        }
  E+ F4 W& p9 K2 `9 c5 i' a
* M7 ]6 \4 T$ N/ F4 a. S8 T8 L}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-8 09:00 , Processed in 0.016618 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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