设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6928|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 g% g, S! G$ O0 C
1 Y8 f8 X7 c  t% o9 N' M+ {& C5 R/ e本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21; q' n4 ~3 s* ]) [, g" Z4 ]) }& V
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& |& _' A+ S0 H& Q, p# f3 a- P
swarm.SignatureNotFoundException5 o1 a. ]' [) K& G/ G( }) f0 Y
        at swarm.Selector.<init>(Selector.java:76)7 U) \/ S1 e5 i' }7 P1 `
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: K) W$ K* d0 l' I# @3 `        at ActionGroupDemo.main(ActionGroupDemo.java:67)1 W; U2 W! K6 a2 w2 j9 K
3 C. _! g; P/ H! u: Z3 F

6 z1 [  q7 U- U" g) l% jimport swarm.objectbase.SwarmImpl;
4 h/ T: \' b% A2 z3 }6 Q- timport swarm.objectbase.Swarm;, j/ P7 y0 j0 u  k* C/ H- [* w
import swarm.activity.ScheduleImpl;6 S1 \0 m# F0 ~; g( V
import swarm.activity.Activity;
  s# `/ s) G+ J' k; _2 Nimport swarm.activity.ActionGroupImpl;& W+ V% P* U' U. V0 r5 O8 m
import swarm.collections.ListImpl;) G$ Q" S! h8 M# B4 [( G
import swarm.defobj.Zone; - |. d5 g9 T- Z+ ?
import swarm.Globals;
4 `; B9 I9 x  C* U/ J1 Y5 e5 Yimport swarm.Selector;( P  N  V8 c* N& S- f% C
import swarm.activity.ActionGroup;
, F5 I# f) F% B" C- ~" {class Agent {
5 M% m2 @7 y+ j( j, `7 L        char id;+ z1 S0 H6 |* V) Y, `( `, l

  J( k7 h; a5 U4 _( s: t  n        Agent(char id) {
' L8 J( `! Z9 v5 X7 F                this.id = id;
5 Q1 T: d6 L* s) V! x- O        }
! p+ I: }  |* E3 U
& B- o* f1 j$ I2 G: G        public void agentStep() {; h1 F0 O# {2 B% g$ E' P# V; R" b
                System.out.println(id + ":" + Globals.env.getCurrentTime());% J$ c/ Z/ |5 h" T0 f* r  ^: ?6 P
        }( y9 f8 ~/ n2 d$ N0 l: k7 p3 C) W+ {
}# K  M: X1 j4 q2 J1 `

2 o( b# O& [0 p) l: O$ f7 n: jpublic class ActionGroupDemo extends SwarmImpl {
, x  e4 p* J  v# p5 |        ScheduleImpl schedule;
+ _4 V, |5 C5 |: A        ActionGroupImpl actionGroup;! }  }5 b) W1 B7 E5 W
        ListImpl list;, R: {# X- r; Y6 n
        char Id = 'a';: n9 L( V8 {6 O" d

. h  V+ i3 K; [% m  E        ActionGroupDemo(Zone aZone) {: P9 a: t# t; y0 x4 L' W* {- k2 h
                super(aZone);
6 _% `3 H% |1 v4 v2 m5 e                list = new ListImpl(aZone);
8 m0 S3 V* N4 @' n2 i                swarmSetp();
) S* f0 j8 f2 `1 Z, Y                actionGroup = new ActionGroupImpl(aZone);
: D' R6 }& k& F7 t6 @4 Q* j  j( Z                schedule = new ScheduleImpl(aZone);
* [$ v) d3 L- k4 F                try {/ r- y3 u% ?; U% ^
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
( @5 l. ~3 f' ~0 C- j                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; r9 ]; _% [7 z. r2 g                        0 e/ C3 M* ?1 [3 V$ n) I
                        actionGroup.createActionForEach$message(list, agentSel);
0 O5 A; \; Z* P3 I: h% X                        actionGroup.createActionTo$message(this, swarmSel);
. k! _  ?6 e( J' i: u6 Y" K2 F9 _                        schedule.at$createAction(0, actionGroup);
" Q$ T$ M1 e6 V                        schedule.at$createAction(1, actionGroup);
" Y" B  s  s% K" ^9 k" C                        schedule.at$createAction(2, actionGroup);+ b. q' G+ S: }. C1 G7 M/ [

, S. q# L- c3 |5 z0 B                } catch (Exception e) {
- h0 T  u7 w: G! _  J% A1 q5 d3 O                        e.printStackTrace(System.err);
0 T4 t5 e5 \- _7 Z. P                        //System.out.println(e);; m2 H6 A3 \  K
                        System.exit(1);# q$ \% t9 h/ N8 A- `( l
                }' d; Y/ ]! Y  R( e, b

  q, s% P7 u0 ]: ^9 E3 H/ y/ ]6 A: J/ g- c
        }# _0 v) b. V  |2 B
- F% w- Y# ^% g  X& u3 v8 D
        private void swarmSetp() {
; r4 \' @7 [' F3 c+ e: ~                list.addLast(new Agent(Id));
6 W; n& V0 e$ X, r, x                Id++;
; L5 |9 E' Z% M! {& `        }% ^& w- R' O* I) O

7 [+ D* D! K7 M; Y        public Activity activateIn(Swarm context) {
; g9 @1 c' \1 w                super.activateIn(context);
8 u& ^/ e' f. h5 G5 d" G1 h# J3 M; F                schedule.activateIn(this);
, U1 l; G8 e' o) K* q, e                return getActivity();7 }- D  Z9 q( N; F8 _) p: C
        }7 T& O* ^+ G( [+ U
8 v' x8 A2 F  \/ q! E9 E
        public static void main(String[] args) {/ S6 _' P; A. f% B* P  C
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
' l! @) [! O& V+ i6 C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 H$ P- V. c! B8 n$ w6 M! R                swarms.buildObjects();
+ J+ ]8 z% S, L) q  s: D                swarms.buildActions();
; d- s. j' h* b% }! c3 q                swarms.activateIn(null).run();& ~. b% y1 G5 Q
        }0 H( r& L9 Q- ?' w5 J2 n

8 \  l% Y2 u) C' g- j}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-13 17:38 , Processed in 0.019449 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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