设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10987|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
1 c4 }& [) J/ ~2 @1 h3 L- d/ l0 c4 G% o. H* E2 H) [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' S' B5 ]' A* `6 P$ a4 z3 R以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
$ d: @& ]( u# B* Zswarm.SignatureNotFoundException
7 n2 _( l$ i6 z$ C" G% |% ]        at swarm.Selector.<init>(Selector.java:76)0 f3 y0 K) a. c6 Q: O
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 ]  e5 `8 L2 t2 H' v        at ActionGroupDemo.main(ActionGroupDemo.java:67)' P9 a$ {8 F. T7 C8 X1 C7 I1 z$ N7 E
- P4 h( m2 [/ `: q& {+ B& p

" E2 ^' h( i% [1 r4 k, kimport swarm.objectbase.SwarmImpl;
$ o$ ^  `  W$ J, Zimport swarm.objectbase.Swarm;
  M2 G: D5 n6 B) X# R6 rimport swarm.activity.ScheduleImpl;
0 ~- Y8 X2 E  q- t6 Mimport swarm.activity.Activity;5 \" y) _; f2 z7 @0 c6 ^
import swarm.activity.ActionGroupImpl;
: }/ ]/ T& t* x* M9 m7 Rimport swarm.collections.ListImpl;# \3 b' t$ A6 C% z( ~
import swarm.defobj.Zone; $ F: M0 z% g2 K
import swarm.Globals;2 z! T* F8 s% B  ^+ c
import swarm.Selector;( @6 |2 Z# j, G6 j7 T) X  k
import swarm.activity.ActionGroup; + b* `% W4 c( R8 a2 k8 [% a
class Agent {
* H( y/ k8 `3 u1 F# y3 t% l        char id;4 L6 j& V; y8 c* B( N4 w

$ p  o* T. @% x- c* m8 x, p        Agent(char id) {
) Y) ?3 V! K% C6 i                this.id = id;  O- _' P  c9 Q  u
        }
0 T' B9 L8 M0 t. ]- P
" O3 }/ f' V3 m        public void agentStep() {6 ^9 w( K4 A% E2 I( N5 ^, ]
                System.out.println(id + ":" + Globals.env.getCurrentTime());
( [. L! i5 a9 ^3 a: A        }) W- O/ e9 {- c# A
}+ [: T+ n* Q3 {1 Q6 L' ?$ _
% h( ?* f% [3 h
public class ActionGroupDemo extends SwarmImpl {
6 w: U( Q; n. C% h2 z- J        ScheduleImpl schedule;
" l* g0 b- l: y8 @( l* E        ActionGroupImpl actionGroup;
: a$ f! m1 }9 X9 r" U        ListImpl list;
$ ]1 P$ r& z' x& j        char Id = 'a';
. i4 o8 }# K7 S; l
/ ~3 j0 \  N3 e3 P! Z4 o& \        ActionGroupDemo(Zone aZone) {
& ~  K3 P' ?( M% o! g2 f2 V$ V( n                super(aZone);
  p' J, U2 ]- g8 }+ e                list = new ListImpl(aZone);- y; b% f, [5 B) t% a' [
                swarmSetp();! T, R: \  a) E0 \7 X/ w$ A
                actionGroup = new ActionGroupImpl(aZone);3 \( f! s  D, O* M" f9 ?
                schedule = new ScheduleImpl(aZone);
& n4 X' a& P+ w7 u) s* S: k7 C                try {8 j% x5 n$ d. P6 A; l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);9 u: D% Z, S$ }+ M3 f4 x
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 \+ E& Y1 W) j$ z3 n# C4 D                        % H, v1 K3 j* K/ M2 f* \
                        actionGroup.createActionForEach$message(list, agentSel);* W. g! x1 h# q! M& g& Z9 ?
                        actionGroup.createActionTo$message(this, swarmSel);
0 o" T" m9 O; w$ d/ _0 Y                        schedule.at$createAction(0, actionGroup);: T9 O8 t) |5 \$ W2 p
                        schedule.at$createAction(1, actionGroup);
% @7 G# E0 n* ?- i- z                        schedule.at$createAction(2, actionGroup);
/ w5 G7 c3 W' |' d
5 f0 W5 r/ A1 i                } catch (Exception e) {/ I# X0 d  B8 k+ {$ N4 M2 g% J  c* a
                        e.printStackTrace(System.err);, U6 A% v) E1 {/ s
                        //System.out.println(e);1 k6 D: l5 n! w4 D9 I; M
                        System.exit(1);9 e5 L' S7 H7 u' f: E
                }  ^9 d, @4 u& ?5 H2 P/ V" E* w
# ~$ @7 S5 l% _' I0 H# S

' |+ j- u& N7 X) q0 v        }6 l" ]. ?+ A$ X! m7 H6 Y
4 i) b6 a$ E: ^& I- E7 j( D
        private void swarmSetp() {7 _& Q% G0 \; O2 Y7 Q, h3 V0 y
                list.addLast(new Agent(Id));
2 w  H) ?% F) t2 F) G+ h                Id++;2 @. C7 V# R$ w. ~+ m
        }
9 L7 y' s! H; ?9 T/ }) K2 x% t1 h1 s) C: C" T6 S+ B4 l
        public Activity activateIn(Swarm context) {% k. n4 P6 u' y, D
                super.activateIn(context);
; i0 F; D% R0 x, f                schedule.activateIn(this);5 D  q1 E0 M* ^' z) T
                return getActivity();
: r8 {% U1 V3 t4 E- ^        }
: g8 D) E" ?3 I' M4 f' {+ L& x: B0 ?4 R* y3 O1 Z0 N0 \
        public static void main(String[] args) {
- x3 K& B8 G9 ]& y: C$ F3 h                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
1 G' Y) a$ P* ~0 \                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);7 \7 \6 o& m  }  D1 s0 _
                swarms.buildObjects();2 ]( G7 A; ^8 H. C5 D- r; e( L+ }
                swarms.buildActions();$ [+ V8 K$ t, s# e3 B0 ~$ L
                swarms.activateIn(null).run();
( B# m: e  V9 {% _' V        }
" c) P+ F: Z2 M- s# C: o7 }8 i. K, x, `6 W  ^; V6 ~/ B7 Q/ f0 K
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-29 15:33 , Processed in 0.017818 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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