设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8626|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: F" h* u0 S3 ]1 I' R, I, [3 T* t0 X+ z" R( i
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' V3 t5 Y1 F% n: @8 c以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
8 v1 Y" U' \8 |swarm.SignatureNotFoundException
9 ^3 W( ]9 I4 ^- ?; X: x        at swarm.Selector.<init>(Selector.java:76)
% }- v' Q4 W' L" N, [        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
8 n# V+ x2 X) x: @: ?        at ActionGroupDemo.main(ActionGroupDemo.java:67)7 e# q* w+ K2 S$ g4 H# C
, A1 ?+ T9 O# h: M. C+ x
  \+ Y* T0 G& }2 L6 i* _  C5 X
import swarm.objectbase.SwarmImpl;( p0 `. E: _+ ]: E
import swarm.objectbase.Swarm;8 o, y6 [3 z4 f" z8 n; ~
import swarm.activity.ScheduleImpl;
8 b9 N. H1 P. F0 n( ^import swarm.activity.Activity;; J) |  {- c1 F$ G  v
import swarm.activity.ActionGroupImpl;3 e- c4 ^, e0 ~
import swarm.collections.ListImpl;
- F/ g  A. a2 y& b8 Uimport swarm.defobj.Zone;
5 m. ], L- F7 C7 z, T! kimport swarm.Globals;
, Q/ Q/ ]8 e8 i/ Simport swarm.Selector;+ ?1 |) K; D, }( Y6 \
import swarm.activity.ActionGroup; ) D1 j1 K! h7 K7 @# N
class Agent {+ y1 H. g( P& e1 R8 b
        char id;' `' G8 H0 C0 n2 M

* \, t9 b; Q; a3 c) Y, y  ]        Agent(char id) {
2 |; n9 x. B. z" E" o  b7 J                this.id = id;
* F; y! p7 ?, d+ O4 J4 g" D1 h7 U        }- g# r7 m9 [% G2 U
7 f4 w" z* m' s1 N' J
        public void agentStep() {
' W. x+ F- K7 B1 k- V) \6 c                System.out.println(id + ":" + Globals.env.getCurrentTime());
9 S: U, T6 e+ i6 ^) P) @        }
4 W6 l9 K1 ^6 ]" Z5 r}, C& e8 A- e' ]/ l# c: c9 d
9 j5 h# s1 t' m
public class ActionGroupDemo extends SwarmImpl {" a. L0 q  r0 K, W9 ?
        ScheduleImpl schedule;( }7 ~/ ]' ?4 y0 j
        ActionGroupImpl actionGroup;5 w3 P0 p, ]; Y% i6 C% D7 \0 _
        ListImpl list;
5 \: L$ G5 A$ B( g8 `% o        char Id = 'a';
& V) B) b( s  }+ V; Y: d0 X0 d* |
3 c: c* z+ H$ t        ActionGroupDemo(Zone aZone) {! E) \7 [9 O; ^- l
                super(aZone);
9 D$ N! q8 }* i9 n                list = new ListImpl(aZone);
2 w2 J- J6 [$ M. s) h9 Y                swarmSetp();& a; {9 D" h! i  k$ I1 @1 K- Y) T
                actionGroup = new ActionGroupImpl(aZone);, i( l9 F/ `/ q0 o
                schedule = new ScheduleImpl(aZone);
* q; ~: O# o$ Y5 _8 ^6 b# s4 V9 [                try {  D4 P# }5 X' Q+ i1 u3 m: |5 D
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 i5 ~; N2 t% @+ _
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
% j9 |5 R1 [  i2 `                        
) t- Y# ?: k5 |  g5 s4 J                        actionGroup.createActionForEach$message(list, agentSel);9 p6 x& O( q0 R1 Z0 t
                        actionGroup.createActionTo$message(this, swarmSel);
. a- l3 `! X1 o% ^8 j                        schedule.at$createAction(0, actionGroup);9 A& [5 I7 Y, q
                        schedule.at$createAction(1, actionGroup);5 {; v6 ^! k( q
                        schedule.at$createAction(2, actionGroup);
- Y: u& l% A* Q
! X; Q; _, `# t6 {/ u& P                } catch (Exception e) {# p! K+ b7 w( t: [! m
                        e.printStackTrace(System.err);* H3 H- x% }5 o: I
                        //System.out.println(e);2 y5 c. p  [3 j7 _
                        System.exit(1);
# C/ l. S# x8 w" @                }+ ^6 f" h. [: d# ~

: j2 h2 G  @. }# v% r0 M( |3 s, l' F$ ~5 J
        }
% Z! j4 x/ Z& Y: q; {6 z
2 e, ~: I' D( j( C; x$ W        private void swarmSetp() {
1 S; N5 E, i% J; d, F                list.addLast(new Agent(Id));( m1 o/ H) [& I% {* b# J
                Id++;
# B' J6 s/ L2 p+ Z* e        }
1 j5 i1 l& u& O% O; @7 i% K: x2 O* z
* B1 Z! X' a6 w, x7 ~: `        public Activity activateIn(Swarm context) {2 P( o7 X9 I/ V  d  K8 W" P
                super.activateIn(context);1 z/ h/ x7 E% ]/ W$ Q4 ^* X; x
                schedule.activateIn(this);) W. h! O3 Z+ m' y  }3 f0 {
                return getActivity();! d8 x- _& ]; P& Y( ^! b) p
        }
4 O) t) z5 i, e/ _
: M% I3 U# w8 }8 K- E8 ~        public static void main(String[] args) {& W) b9 w: A& F- z7 k5 Y
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' Q8 g' |% {1 R: L' @                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
  D  @- z( K" M% q# A4 u9 F3 M                swarms.buildObjects();
& c0 J( r3 N5 k: a; D/ H5 ]                swarms.buildActions();' O1 B, S; Z+ P
                swarms.activateIn(null).run();0 m8 z4 d: F9 N# b. x
        }
: K( t$ ^9 w; s3 }# x- Y7 a- A
2 v1 {9 }3 B: i# l}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-18 05:06 , Processed in 0.020482 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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