设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6979|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
: B4 o9 W8 G/ K' w2 h' X" s! S. d' L6 \8 f& j6 ^* x# o9 U
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ f9 I6 d, ^: N  `2 z; q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 ^7 x2 V, h7 a# |  l1 T
swarm.SignatureNotFoundException
% \, _$ g/ L% r        at swarm.Selector.<init>(Selector.java:76): Y# r, m3 I$ D' ^7 G( u( d: `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& c7 A/ c/ X; r* T9 m% p3 r" X        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( U& h  V& h& |3 V/ z7 d
8 e" ^4 m$ ]) z1 J" \# p/ x" r# h) k) k/ ]
import swarm.objectbase.SwarmImpl;$ v. _( S/ O" a
import swarm.objectbase.Swarm;9 k0 _* U/ L( N3 T7 w: W
import swarm.activity.ScheduleImpl;
) N' N& \/ n4 \+ Y: _# Yimport swarm.activity.Activity;& o' q& `$ |  i8 A* s& f7 s8 @4 _' y
import swarm.activity.ActionGroupImpl;
1 i! A2 M; i; I. }4 U1 Limport swarm.collections.ListImpl;
& }: k* C2 m* y/ H) i: g- himport swarm.defobj.Zone;
# f: T) P8 Q2 I6 ]8 _+ T! {import swarm.Globals;
! D+ X! ?% h+ _. cimport swarm.Selector;
, w6 ]0 ?" a* `* Fimport swarm.activity.ActionGroup; . u) L, ?- }9 C4 N8 q) F: m- O
class Agent {# b; L: I! ]& N  f1 ^4 u
        char id;
  u, o9 b9 [& j8 [, A) T4 b/ l0 F; R3 l9 \0 ~/ `; D0 H& r- A
        Agent(char id) {& n1 ^+ U7 Y/ G
                this.id = id;
' |& N6 v; N# {$ x! W" q" A        }$ n: o5 i6 [. |) c8 l" d

' Z* a( w  L6 o        public void agentStep() {
7 f' {; e' m, ]& ?) d! ?2 J8 S                System.out.println(id + ":" + Globals.env.getCurrentTime());7 I, l- {' z7 ]  e! x
        }
8 _# I! J* H  E}$ D! J3 z- x6 d
/ E" U8 @" m( w  j/ q% p
public class ActionGroupDemo extends SwarmImpl {
7 K8 Z4 q8 B. q3 O3 v        ScheduleImpl schedule;
) g6 Q5 q4 @: W' P; r0 t; |        ActionGroupImpl actionGroup;% {2 u: |* Q, U9 x
        ListImpl list;
+ v7 b& q) X- i        char Id = 'a';8 J8 q( P5 D; U1 [: V& J1 [

- |: j3 ^6 Z- l" I        ActionGroupDemo(Zone aZone) {8 g- v9 o4 Q) ]& s8 k8 _0 g: p
                super(aZone);8 A9 M: f: O' g5 T3 E8 \+ P6 j
                list = new ListImpl(aZone);
3 x% b. V4 d$ _8 m2 |                swarmSetp();
. n. Y; ?% K' z% s: f* r, t                actionGroup = new ActionGroupImpl(aZone);8 b2 Q1 S* w" z1 z6 u
                schedule = new ScheduleImpl(aZone);
; w, I- m# M% S) P                try {5 o( w  m$ K0 t' Z: E! Y3 j1 M
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
: @6 E- G% ?( }. F, s" X5 s- F                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. O3 l* P8 L% R0 C' h$ a
                        
# I9 }# W  \+ ?# r! v                        actionGroup.createActionForEach$message(list, agentSel);
5 V6 Z; T( w: N                        actionGroup.createActionTo$message(this, swarmSel);
5 e# s7 Y; ^; Y) M                        schedule.at$createAction(0, actionGroup);
( T/ z* c! J9 {+ i8 v                        schedule.at$createAction(1, actionGroup);7 H; Z" y. F8 d3 D
                        schedule.at$createAction(2, actionGroup);
+ l- b5 [# J# ]) R
' F8 J& Z7 s4 \/ z6 V% `) N# X                } catch (Exception e) {
; y3 p0 h5 z, K* u6 U                        e.printStackTrace(System.err);
$ u- A) O' n  N  @$ b                        //System.out.println(e);/ E6 v4 w0 {/ C) F3 m( W
                        System.exit(1);
. B$ t0 n9 P1 o/ ?                }& m* O9 W7 M3 q# N9 K6 B

; ?& r0 `4 D% _/ E) h; B# G" U1 d0 c
        }
( ?9 A8 _4 W5 E/ u
5 N; o: q) B& |3 e. o        private void swarmSetp() {& z6 ^* b6 f: t) T. r
                list.addLast(new Agent(Id));" X& k7 ]. A& p9 D4 `# Z
                Id++;- }( q# Y# v! [" |% L' a4 o
        }# |; `# H( g% E  ~9 b: `5 `8 h

8 x5 |: R! m) R9 |9 a        public Activity activateIn(Swarm context) {
# V0 A0 m; q$ D' a/ P6 k                super.activateIn(context);
. ]/ @% L2 o. C& u8 v% `                schedule.activateIn(this);
& j: C0 l: g1 W* F: ]3 N6 d                return getActivity();
6 `/ o- ?  b& ]- e( G        }. S: ^/ R1 l: E4 ~/ o$ i

3 _( R) r, N- C9 q/ f/ N# \4 s5 h/ Z        public static void main(String[] args) {
3 B( e9 G, h" n  ]5 B0 P+ E" \9 S                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) M1 ]" C& C/ h- c. @, n  L
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);0 s2 }5 s) L1 B& v
                swarms.buildObjects();
; |+ }- g5 j  j- M8 Y8 J                swarms.buildActions();
9 }  q8 n" y, I# v$ k3 E                swarms.activateIn(null).run();8 o& o7 g. l) d( v4 L
        }
/ P% s" I6 B" w0 t8 ]$ K! S+ R0 F4 v1 x# j, m
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-15 13:21 , Processed in 0.019942 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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