设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11615|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
5 x3 Y# S" ~8 R. L) i+ d9 p* h9 a. m& d, d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 X) f6 p8 \" ~* Q" V以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 r- a$ E0 ?% p' i; g. R
swarm.SignatureNotFoundException
% R3 J5 _: v! V6 k        at swarm.Selector.<init>(Selector.java:76)
2 S( i6 t9 v+ Z& u        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 X$ P. p% W5 ~5 h8 [        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ c, f9 [# k3 I; o# A8 Q- Q4 r* w: \7 }9 a2 O
! s4 g( c3 B* I& Q8 J( `( n
import swarm.objectbase.SwarmImpl;# y, D# h+ Z; L9 c
import swarm.objectbase.Swarm;, T! G- G, i  w8 l% q
import swarm.activity.ScheduleImpl;
1 V0 r( T- d2 m  N) N2 a7 s& Dimport swarm.activity.Activity;
8 w0 {9 N6 m" I* n0 o3 |import swarm.activity.ActionGroupImpl;
# d7 G2 _" I" {% P& gimport swarm.collections.ListImpl;" R1 i- w5 `3 o) X( e! o) q
import swarm.defobj.Zone; + K2 v+ X+ N, O# g" p" E
import swarm.Globals;
7 E( E! o1 \5 `7 Z* h  b' Gimport swarm.Selector;
" L6 \1 l1 R9 N1 S# }import swarm.activity.ActionGroup; 5 i. [8 F6 h" b
class Agent {
& p& [8 @/ w" W$ B5 O, w        char id;' X& m# [. f( z4 f0 p: f$ G: c3 q

0 V& J+ }9 h9 U8 p9 b        Agent(char id) {
; ^' N$ n. k& Z; n( c% v/ g                this.id = id;* \' \; @# F1 {# M! [1 Q. e3 l1 c
        }6 F. o/ B: b% h& O6 R0 n
. U+ F- k- c' [1 x
        public void agentStep() {: Z. F) K# ~# t: n3 k* ?
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 C4 f6 b, x/ G) H& i, |/ r        }
7 Z" C$ @  c$ j}8 d+ x2 N8 x, K. H# g( k. g1 I  j7 [
2 I4 @9 t# P8 X0 ?* Y; ^4 m8 x
public class ActionGroupDemo extends SwarmImpl {. r; I3 O8 I- @& d& U% W
        ScheduleImpl schedule;, L+ T& E3 P$ g$ h* _' {
        ActionGroupImpl actionGroup;
! K6 o3 O! s& x2 ?+ M        ListImpl list;; Q) c: D" X& h$ t: _
        char Id = 'a';. ^7 }( n1 p+ {* K7 Q

: w- e4 @$ U5 T, ?        ActionGroupDemo(Zone aZone) {
, U2 Z* n) c0 b5 @) h                super(aZone);
) m& \1 r; v; M2 I7 d# @, L1 L                list = new ListImpl(aZone);* y5 B# m' E- ]) N5 ?
                swarmSetp();6 F2 d8 U2 E7 _1 }% f6 N
                actionGroup = new ActionGroupImpl(aZone);
% _* M4 O# Q% A6 s5 `. `& o+ d                schedule = new ScheduleImpl(aZone);
+ m5 \7 X' M7 q/ c                try {
! `% R! y/ l# w  _                        Selector agentSel = new Selector(Agent.class, "agentStep", false);, N% n+ L! c' d+ {9 R; w
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; ^% z. M5 x9 {) c1 G
                        
. l; E/ m# J4 Q* i1 I1 K                        actionGroup.createActionForEach$message(list, agentSel);
5 c8 `; J" J- i) u                        actionGroup.createActionTo$message(this, swarmSel);) j; {, E9 h5 f, f2 K. r0 [# b
                        schedule.at$createAction(0, actionGroup);
8 f$ T4 J# {: x9 u                        schedule.at$createAction(1, actionGroup);
. n, s% k: u6 G$ c                        schedule.at$createAction(2, actionGroup);9 Y6 z0 d/ F7 i% z) |* X! t8 _

, X: ^' `! ]8 ?( F                } catch (Exception e) {! N+ G: _+ i, N7 E
                        e.printStackTrace(System.err);1 W8 l/ S+ l4 O) J
                        //System.out.println(e);
8 |: V; J6 |, X  p" D2 y                        System.exit(1);+ O4 R, u8 H) |6 A6 t1 x, d5 e
                }
7 s5 i4 e- _. x2 z8 H4 k, S- N0 u2 \
" l& Y$ J% l7 l3 ]7 C( m( R
        }' S4 Z) e+ M* k
/ X; z* i$ D/ i# D) ~
        private void swarmSetp() {6 O1 N4 ?! b  t" ~
                list.addLast(new Agent(Id));+ D) A2 C3 x( b, P. P
                Id++;! n) h) T. R4 W7 g1 B- K0 q
        }' X. e, a7 b7 @6 g; S, y" ]' W
. j" F9 v4 Q5 P; Y! K: q
        public Activity activateIn(Swarm context) {
% C6 }. h0 U$ d3 s                super.activateIn(context);
9 Y5 V' @, l: }& }; [                schedule.activateIn(this);
8 ^* L9 E1 T4 X) y                return getActivity();+ b: z4 u9 d( v( x, O- `+ b' P
        }% ^) E+ x( t5 g) X4 T
  o' Y4 Z8 O- A2 u8 w* {. [& d
        public static void main(String[] args) {! h+ |8 m- c- |5 a# F5 x
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);- z! \  D1 `5 {
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
0 o$ H! }* e7 V# A& k; ]                swarms.buildObjects();8 L6 w7 }, q* O" t" L3 ?- ?
                swarms.buildActions();4 T5 g$ G: D6 m- x' J4 _
                swarms.activateIn(null).run();
; l: k+ u4 B+ w5 Q0 x        }
- d4 y% G1 a. B# D( s$ C5 j. \- b5 e) i3 S! V; A: t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-17 08:04 , Processed in 0.013619 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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