设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8785|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 / U# X& l! x7 w) y" i
% V3 l0 {2 |. f2 \
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
! u8 |6 M4 L; B3 B! U" T+ `. d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
5 L( k) F. N% aswarm.SignatureNotFoundException
  x) I; J* ?& F% I+ W0 u9 B0 L        at swarm.Selector.<init>(Selector.java:76)
5 C& m" B' |+ ^, z5 E9 J" D        at ActionGroupDemo.<init>(ActionGroupDemo.java:37), s7 h1 c$ M+ w) Q
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 {" a; ~9 B) D3 B) Y1 `  k. _, e& ~
' d1 L6 L1 w) V# g' ]% H- j
* |( n6 D, j  B; H! `, Q+ {import swarm.objectbase.SwarmImpl;
  E  J- X3 ~' N( w4 k* Fimport swarm.objectbase.Swarm;1 U; V9 M# ^2 v' i+ o8 t, u' I& I
import swarm.activity.ScheduleImpl;, x- [9 `" S3 f- \6 V
import swarm.activity.Activity;6 A) }3 b$ s" L
import swarm.activity.ActionGroupImpl;' A4 j  A3 @3 I7 }+ o1 ?0 b
import swarm.collections.ListImpl;
! N% o$ d% x5 Y, timport swarm.defobj.Zone;
8 j+ F: f0 E1 I7 Timport swarm.Globals;# R! E# ^# d: o1 V1 W5 K
import swarm.Selector;
& e9 i; k& u0 \$ e3 M0 v# p) n. Simport swarm.activity.ActionGroup; 2 H/ v# @' q, ?3 K% |6 x
class Agent {
) A' ~- S0 w; S! k; v8 n        char id;( N2 ~; X3 i9 }, U9 {
+ |. ?2 ^/ O( w6 s# Q
        Agent(char id) {5 t$ o7 E9 J, q2 j
                this.id = id;# R$ \+ ~5 m# A/ }) }* E) y
        }7 @  K2 A9 S# G8 D
: }, V  M1 g9 ~. t* i
        public void agentStep() {: P: G, N1 N* Q, J9 p
                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 f; L% m: R9 _        }
/ T. Y2 Y, Y# G) C5 a/ S& t}
3 O" C( y$ d/ ]. h  N0 U0 ]: c
3 t" ?' P* v1 ]6 Bpublic class ActionGroupDemo extends SwarmImpl {
: x2 \4 w# i' U        ScheduleImpl schedule;
+ ^6 X6 y+ W4 `* ?+ y# f        ActionGroupImpl actionGroup;
' F* B1 U* q' C5 {& m( _        ListImpl list;
# i- \  n8 q" |$ X4 z        char Id = 'a';4 H4 l: d- ^/ d; Q) z# |$ w# p

+ ?3 v& X) T% Q* D6 g+ h( l4 d        ActionGroupDemo(Zone aZone) {$ k" d" ]' L) T
                super(aZone);/ v0 c1 `9 D! T" h% U% Y
                list = new ListImpl(aZone);
4 ^- e. M$ j  z& y4 s                swarmSetp();
, p3 e" Y! G/ s7 u2 o                actionGroup = new ActionGroupImpl(aZone);0 N; ]. Z# ?0 c- `: g6 i
                schedule = new ScheduleImpl(aZone);1 e2 Q" b/ b4 M3 l3 G
                try {% K) I% p" \; Y( k8 f3 q4 D/ o
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  p, k, U2 P0 N7 H
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行! u% d& t/ H; ~9 Y
                        / r! j( q# L8 o: r$ Z, @* K1 F9 v+ }
                        actionGroup.createActionForEach$message(list, agentSel);* H7 k& @! Y$ F
                        actionGroup.createActionTo$message(this, swarmSel);0 Y+ R! A8 j# X$ B+ G
                        schedule.at$createAction(0, actionGroup);
% E! p7 U! S: |                        schedule.at$createAction(1, actionGroup);, T) [% W' @/ S( F  l) U
                        schedule.at$createAction(2, actionGroup);
; N! C5 x3 R+ f
, V+ c% b- F) @, s7 j                } catch (Exception e) {
( o, s6 [/ @7 ~! v5 C8 y* ~                        e.printStackTrace(System.err);# ~. c& o" n0 |7 W8 t
                        //System.out.println(e);
* I0 f. y# G% T# w* [                        System.exit(1);
& \; P! i# [# @% y! \* C                }
5 Z) G! x  K. ]4 f" N
; L$ z- Z6 t2 @# `% k" _4 l5 B/ B
5 {9 s0 n4 ]# t0 b0 M8 Y  T        }. K% }: g2 J& r7 H' G

8 Q1 y# A! G2 B0 k7 g        private void swarmSetp() {9 A$ H4 @% ]8 N0 i# i0 ]" g8 A
                list.addLast(new Agent(Id));+ {: V* P6 S, ~* g# e3 v, `6 @
                Id++;
9 S, I) J: |2 R# x' M        }
9 C' i" y3 q! y9 o" I  h! f5 V9 j& G- t
        public Activity activateIn(Swarm context) {+ h: Y% F6 w' p
                super.activateIn(context);
: Z# s; `9 m! ?7 l  h6 y                schedule.activateIn(this);- l1 P" Q3 v% w8 c
                return getActivity();
, H. N" Y: }, l* t3 \! u        }% z1 I4 B, B7 z! f6 V4 ~

6 @/ z6 K4 ~- F4 s/ f1 c3 C7 ?! N        public static void main(String[] args) {/ e. ~( R+ r2 x& b
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 u# F& D6 X! d                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);+ J- \7 _( m+ x9 S6 P" N
                swarms.buildObjects();7 F) ]- o0 k/ I) x2 n: ?' |: l8 L
                swarms.buildActions();
6 o# `7 `; m8 k% o6 A                swarms.activateIn(null).run();
% M# r1 i  G, v; {        }. S% v; n+ [. h0 f) d% ]: B/ |

4 \6 v, j, b8 w( W3 P+ U$ l" i}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-22 19:10 , Processed in 0.018723 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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