设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7503|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
3 d, _- f" y' V! f$ r7 p8 P5 A. a# `$ f6 K
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( _" j2 m  p7 W8 P以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ H- p+ [( Q; m# F2 E
swarm.SignatureNotFoundException
* `- N4 x& G  U0 ^% ^6 h3 `        at swarm.Selector.<init>(Selector.java:76)
: I# s5 L- n7 U' O9 J0 f! P# h        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)( n9 X" c% k! U. V  }
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' u9 a% j& F4 o/ o0 L9 n/ P4 a- Y3 c$ ]7 Q1 h; ~
$ N# z6 T% v" m) i; |! x; t% b
import swarm.objectbase.SwarmImpl;2 ]. I3 V- n2 V0 }
import swarm.objectbase.Swarm;
, n' G8 n8 Y4 F  ^0 nimport swarm.activity.ScheduleImpl;% i3 D: |1 I0 T2 @$ X: Q& ]( f
import swarm.activity.Activity;0 v# O6 T( X8 `( h0 U
import swarm.activity.ActionGroupImpl;! U) b9 w' R, r) v# Z
import swarm.collections.ListImpl;1 T) K7 O% ^" I
import swarm.defobj.Zone;
% t- J2 q2 W% x. `3 @' Kimport swarm.Globals;
- P0 v0 V6 R  k/ M8 D. N2 b) V' iimport swarm.Selector;
% [/ B4 F4 g& l0 a/ uimport swarm.activity.ActionGroup;
3 M8 @0 f3 k' Q& v! R6 k/ J9 Tclass Agent {
  M5 U9 o) f9 S! D) s0 C% I: f        char id;
. C2 p; `' T# r+ C  y. ]
" x' \+ @; ~: ]        Agent(char id) {
2 D/ m" P/ L  L1 w: g                this.id = id;  U! b* E: [2 k  c2 Q) @
        }
# Q+ [5 `5 s$ `% G  t$ X0 d: C6 v1 ^% @7 k  ~# c8 h
        public void agentStep() {
" B+ y& q9 t- }! p$ r6 z                System.out.println(id + ":" + Globals.env.getCurrentTime());
7 X8 P6 k5 c# g) E" h% g% q# i4 _        }3 ^# J3 M3 h% \$ l! k
}
- L9 ^) x7 S8 H: S4 ?: V6 V8 t) S1 r& b6 j, k  D! Q
public class ActionGroupDemo extends SwarmImpl {0 t. [- _  c5 [
        ScheduleImpl schedule;) a9 b" K$ k3 Q
        ActionGroupImpl actionGroup;
- s; ]9 I1 b- D9 {' ^1 r9 l        ListImpl list;
1 S- ]8 i; B9 }2 R5 C8 V- T0 W        char Id = 'a';) u3 ~; u; y* W; J9 S  A+ _$ {8 e' s
* n  i: W8 x2 V' \$ h! P
        ActionGroupDemo(Zone aZone) {
1 q4 e! ~: s4 F9 G9 X" G3 f8 f9 X# U                super(aZone);
4 B3 W$ d$ Y7 x                list = new ListImpl(aZone);
; E3 r0 H2 |7 Y: b" W; H                swarmSetp();& d2 b5 S: k5 t5 V& I3 n' w
                actionGroup = new ActionGroupImpl(aZone);$ j' w0 H0 C$ u9 h
                schedule = new ScheduleImpl(aZone);
3 q9 ^8 b8 [/ y. C                try {. |: W0 |: E( j) w
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* Z) T& M5 W# o: P% [9 q: d# K
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行3 a' C0 q4 M; A6 b
                        2 M4 f( Y# s7 \; m8 o
                        actionGroup.createActionForEach$message(list, agentSel);1 k& P4 ~% Y) p$ X
                        actionGroup.createActionTo$message(this, swarmSel);3 j, x5 s1 G% D& E; z9 [( U5 x6 M- N
                        schedule.at$createAction(0, actionGroup);
: Y' q8 R9 G! @7 R7 o                        schedule.at$createAction(1, actionGroup);
" x2 r+ w7 `2 B% K# _                        schedule.at$createAction(2, actionGroup);3 q# \  |6 T4 ~  g& H

: }2 C3 \7 A6 p, e, X) C, B                } catch (Exception e) {
& H6 T0 N' N: l  a" x                        e.printStackTrace(System.err);
3 p/ p9 H6 R  n, d: q: O  V                        //System.out.println(e);
7 {+ u* v, U8 r, `8 S                        System.exit(1);5 u) ^6 o: q' ]: M
                }
; e8 m' z( E' R/ _1 v) r/ n1 B; Q) A& w3 D
# ?8 u$ Y/ N7 L# c" Q0 y( X3 o8 F  [
        }+ ]8 e9 k- c& L) g! o

% n" z, u3 ]6 A: i1 D        private void swarmSetp() {; a& i) e  f: n7 m+ F
                list.addLast(new Agent(Id));
. B8 z  G  d5 y5 i5 _. _# T                Id++;
! ^- m; E5 @* Y# z# s4 H1 D5 w5 \) l- ]        }
6 U7 Q7 [1 p" `' k/ |
# n; \! i- t/ t% \& c& l        public Activity activateIn(Swarm context) {
" g  k" L9 K5 W8 R$ F$ U                super.activateIn(context);' @' S0 f+ `2 ^9 ~$ \) N) s
                schedule.activateIn(this);; p9 [6 ]" O; L& F; T- C1 N6 E% q
                return getActivity();
, y& C! Y" D7 ], \; s7 c3 h: y        }" a& `0 W: S$ O& r, K; G( Q

$ C! q; w0 z- c        public static void main(String[] args) {* B0 T' p( y- a" w7 A/ A# L7 Q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 n* J( h$ w( i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);, V; a1 _) m% s- W: m
                swarms.buildObjects();
9 F% ~% h# ~: ], d( s2 h! J                swarms.buildActions();
/ v3 e6 R' j3 q5 A" v                swarms.activateIn(null).run();
* j0 z) V: N4 q3 F9 x        }
9 r% R3 V- ]" i& z, Q3 T' t$ z# b- A8 W& @7 F4 H" X% w! V4 _4 j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-4 20:23 , Processed in 0.017584 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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