设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11684|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
! C8 W9 X% i" z9 {) k
  r- ~" c0 x0 ?2 x0 b本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ R' Z, h5 r; i" X
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 }7 V: @( U; q
swarm.SignatureNotFoundException
: D' y6 A) H% ~% f: X        at swarm.Selector.<init>(Selector.java:76)& ^. ~( P' c$ z/ g. q  F$ H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ v* e! h+ f5 y: A, H
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: c9 ]! h4 d$ a3 }" s# C
4 @# m& _8 L5 P. d; p# l
1 [. v4 [7 T) ?/ A) e; Q: Limport swarm.objectbase.SwarmImpl;& X- T" \% V" a2 x/ l* ^
import swarm.objectbase.Swarm;
7 s9 O* E, ?+ C  l" x- y! ?import swarm.activity.ScheduleImpl;
9 c0 u" P2 n  }( Z3 T% G+ @0 pimport swarm.activity.Activity;
# P8 N5 j$ }9 b" g) Mimport swarm.activity.ActionGroupImpl;, ]% o6 V6 [. w/ c
import swarm.collections.ListImpl;+ ^' m$ e$ i# [6 }( R" Q
import swarm.defobj.Zone;
  M' _; N$ L( L9 F1 \3 simport swarm.Globals;# s4 ^6 g/ X. }7 _2 S
import swarm.Selector;& r% W, X6 u+ g2 {3 S
import swarm.activity.ActionGroup; 7 \/ Y6 a: _. v' \- Q- g
class Agent {
  F  U" T, h4 w; I' G; i8 g        char id;
' `! I3 z; s$ ^/ |4 ?$ m( X. J4 J8 \4 r* b
        Agent(char id) {0 D3 J4 p9 Z& q$ a6 l1 z+ A" y
                this.id = id;
/ K: S) M( _, d. j        }
  i5 M' z( G/ q: {3 i
6 r+ j0 z" }, g* v        public void agentStep() {
4 v; w  [$ J, E! g6 K7 V/ Z4 H                System.out.println(id + ":" + Globals.env.getCurrentTime());7 b5 _$ m, ~& F7 o8 @
        }
8 g8 J3 P, n, M: V1 d}7 J1 F  p/ X/ L4 e% v- I

, P' {; M& o. T. Spublic class ActionGroupDemo extends SwarmImpl {6 u4 k$ s$ g' a0 O* ~+ }. J# M
        ScheduleImpl schedule;% b- b0 y* j. U  [
        ActionGroupImpl actionGroup;8 N/ i5 {: \; p- c1 w8 [
        ListImpl list;
1 [- V8 o, A1 a9 A# i0 S. {        char Id = 'a';
) v3 s' b9 c' E) D8 |* \2 E, `% ?+ {) z( w, j
        ActionGroupDemo(Zone aZone) {% _; P% e( Q( U! T
                super(aZone);
8 S5 y: O% z2 }7 W# p' ?                list = new ListImpl(aZone);
. ]7 W) _1 ~. b/ |( E4 N                swarmSetp();6 q5 T( E1 b9 }
                actionGroup = new ActionGroupImpl(aZone);4 H  _8 @, z' B, B/ X  [( @5 W) V0 M3 e
                schedule = new ScheduleImpl(aZone);/ |& w5 z1 ^1 t& q- `+ L5 F: z
                try {
0 S; N& Y6 q# T' X! c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 i2 }% I" E8 _/ p, u                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' i1 X6 {+ k9 r. ]( V; P7 P8 I                        $ W$ v+ a. H& m! g
                        actionGroup.createActionForEach$message(list, agentSel);$ C! b8 r% X" f% _& ?- }" E  k5 H
                        actionGroup.createActionTo$message(this, swarmSel);  Y0 b: X6 h8 L  ^0 ~3 x
                        schedule.at$createAction(0, actionGroup);4 R! c9 ]2 O; i/ {* Y. M
                        schedule.at$createAction(1, actionGroup);
  d/ S! c. o1 o  Q. R: G                        schedule.at$createAction(2, actionGroup);
. h  Q. T/ E9 Q7 t
% ~" u: ~& _9 f& s, F# H, p                } catch (Exception e) {$ ?5 l' ^/ ?$ @9 {
                        e.printStackTrace(System.err);% w2 P2 W5 f* t$ L: l$ k
                        //System.out.println(e);
2 T5 H8 {8 N1 Y' I# M. f' m                        System.exit(1);" b) u4 v, m: v2 G: V  s. u
                }
1 k/ v6 L4 p, x" P& b5 o/ E# }4 H% z) w$ ?+ J
: X/ O" M1 R- Y& q& W3 C) e' Y& Z
        }  ~! N$ f$ Q. y

( P  n* J% N% }+ W        private void swarmSetp() {
& H$ J( ]! v5 w) a$ e$ a                list.addLast(new Agent(Id));1 S5 F# T  t* p/ v* Q8 G! v
                Id++;
; ]& }& x" w& Q% K: Z        }# G" A0 L! _9 y& O; C% y- Q

3 W8 [" b( c1 D6 K: d; L        public Activity activateIn(Swarm context) {
: H8 o* i% w8 g7 Q' N3 c. L                super.activateIn(context);
  K+ X& q! L$ w; k& y3 G                schedule.activateIn(this);
. ~8 B- _4 ?" V5 x! O' |; U& `                return getActivity();
# @9 y! C' n' f$ R9 E        }4 g( A- s( B) p) S3 m9 e
+ t7 N# E8 M: L) g" X
        public static void main(String[] args) {
& ]9 Y  F- s; O1 E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);$ l0 b' Y, q4 Q4 ~# L0 y5 R9 g
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 a* _/ y' i  S3 G                swarms.buildObjects();' d% F! e/ P- P+ x& L: X& Y7 [/ G1 }
                swarms.buildActions();
4 s8 i% H- E8 B) q6 X0 g                swarms.activateIn(null).run();) m, o6 K3 K  B) W1 i& c' j5 v; z
        }& w( [% _$ q) B( J

6 |* C# [4 {) Y9 k}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-19 02:23 , Processed in 0.014310 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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