设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7601|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
/ W  F$ A7 I. J: U
5 o) p0 @1 J9 a/ d: |) V本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
3 g. D- O" |$ f' B以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.7 d9 t: V; q6 N3 p& y. m* |
swarm.SignatureNotFoundException
) n9 _. F. a& r1 C" M) _        at swarm.Selector.<init>(Selector.java:76)5 H: R. ^  e) U+ _2 e& d7 a- t- c
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)) ~" n4 d/ ~5 X3 w" M2 V0 F
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
' S* j0 e' U+ F# g" q
- |- E6 G5 L- Q3 U! u; o' ~
$ C& w" P! s& a/ `& T* Timport swarm.objectbase.SwarmImpl;
3 H5 [/ v; l! V2 H) A/ Fimport swarm.objectbase.Swarm;) B& B' l) v: U9 c$ _: O$ z
import swarm.activity.ScheduleImpl;
0 M2 F& ~; W" q" [import swarm.activity.Activity;
! F- C1 H  r( j: M( W2 R) l1 U( jimport swarm.activity.ActionGroupImpl;
4 n8 r  a/ l& W! k4 ^/ y& qimport swarm.collections.ListImpl;! q. k# M- l/ C1 N1 Y7 V
import swarm.defobj.Zone;
  M0 E4 l, ?$ \+ _0 i6 pimport swarm.Globals;1 S/ _: y5 ~% X. h$ d
import swarm.Selector;, u# \  Q- q) X2 [
import swarm.activity.ActionGroup;
& ~% J/ B0 {# ]0 }$ L: G* F7 eclass Agent {- A$ \- [6 h6 \/ B. D
        char id;
* N7 y4 c; q0 S/ ]8 w/ a1 V
8 F+ U8 I4 @2 C# G        Agent(char id) {
4 {) n. l% O% r' Y* q                this.id = id;
0 s- d! G4 B6 S, U! L: A        }
+ ?1 Z+ V  i/ [* ?# x1 [% H1 @# ?5 h# m' ~/ F( t$ i
        public void agentStep() {- Y" `8 O6 Z. d
                System.out.println(id + ":" + Globals.env.getCurrentTime());* C% V5 s2 A. `3 P
        }
/ L$ f( G  ]$ A9 n' x8 Z# F8 S2 |}
4 {, R( H6 e3 T. u8 n% c# _% m- P; v" l. C8 v% Y% [
public class ActionGroupDemo extends SwarmImpl {1 x8 t0 L* g' f3 E: ^+ w- t0 t' ], B
        ScheduleImpl schedule;4 V9 O- s% T" j7 B6 }
        ActionGroupImpl actionGroup;
/ V+ h4 e7 W! M9 n/ A        ListImpl list;5 q- l1 B4 I0 h' f9 G: Y
        char Id = 'a';2 J0 v' _" Y8 }2 G9 s

% W. ~/ M2 S/ e% }& B: Y% B        ActionGroupDemo(Zone aZone) {
! G  a$ V  L  |3 B" ]                super(aZone);
2 U" C8 i  W8 K% m7 J                list = new ListImpl(aZone);6 [- H+ x' `7 c& w
                swarmSetp();. x5 |5 o# \, i: R' t
                actionGroup = new ActionGroupImpl(aZone);: w+ ^3 A" A1 M$ }5 i, Z) O' T2 T
                schedule = new ScheduleImpl(aZone);
+ k" w' g! J  X" B" s0 t* P' g                try {% t/ o% E6 a8 j8 i
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);7 c  d8 ^4 n' ]: L; Y
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行6 }2 e" K  R! A8 b  P- Z* U3 y7 j/ [
                        
( [3 M) i9 S  W5 J1 G6 z                        actionGroup.createActionForEach$message(list, agentSel);) s) f3 p' y4 T, k: o/ S' m. m
                        actionGroup.createActionTo$message(this, swarmSel);
( j) B+ L( Q3 U                        schedule.at$createAction(0, actionGroup);
( T* c- j8 g8 q# W6 V7 }% x/ n                        schedule.at$createAction(1, actionGroup);& l( k& F% b' b2 U$ ~: f" s
                        schedule.at$createAction(2, actionGroup);' `+ h/ _. a6 x+ I+ d+ Z8 K& f- N  b
; X& L1 w' Y3 ?2 i
                } catch (Exception e) {  E/ I4 V8 t  m# x* u' ]5 ^  \6 i
                        e.printStackTrace(System.err);4 F; t7 L! ]$ Y! v5 m7 B
                        //System.out.println(e);
5 ~" P6 q; |7 t% T- N                        System.exit(1);
. H* y  Y, R* U$ ]: Z4 n) G+ S                }/ h0 n  [4 g. v2 A5 m6 D/ _/ k
; H- K0 e; h/ {$ x6 ~" T3 c: o; j
1 P+ p% X( D  m+ t  Q" t- N9 _
        }
( ]1 y$ w0 o) m$ `  F" }3 y; I! w2 f' I3 d- x. e
        private void swarmSetp() {
+ V, U: Q) E; I' C3 U5 T                list.addLast(new Agent(Id));. Z+ k; q1 d9 d5 |- Y2 J
                Id++;
( y# w6 c1 ]  M1 y6 m6 V. z, k        }
9 T* Z$ @1 E3 F! l4 V5 z
0 w: P- @8 v: ^: G+ o, V        public Activity activateIn(Swarm context) {# Y- O1 w/ c8 i) \4 `
                super.activateIn(context);
% s. f. k5 p. o* B& v: I                schedule.activateIn(this);$ l, i9 i- m7 ^- D1 P
                return getActivity();7 S6 R3 ~3 h, ^) q6 }2 j
        }) j0 x, R0 z! R, V
9 W- N1 [: `) _; P7 N# V7 u8 P% U
        public static void main(String[] args) {
( a+ W. Y  X% n2 d3 X* s- U4 }6 h                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
/ W# Q% x$ G% ]; T4 X7 y                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 K0 g  \! C# _' P7 ?: z2 O7 h6 x                swarms.buildObjects();
( k. h& k0 F. ?' M9 u1 E                swarms.buildActions();# p& U. b2 h8 b! a) D9 f4 d3 {
                swarms.activateIn(null).run();
1 e9 ?% k% C( b5 I' T/ m# r        }; O' g' i. ?+ N9 f4 }: V
4 V2 [: ~9 y9 s" ?  O) `# v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-8 07:33 , Processed in 0.021448 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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