设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8335|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! M% L. ^# {# m) X7 m9 }
7 W( x' |. u: k
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21+ X5 g' J- n) F+ r' \
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# z, X2 @; Z1 d( r% u" ]  |6 eswarm.SignatureNotFoundException9 t6 V! }1 ]; k
        at swarm.Selector.<init>(Selector.java:76)
# ^  w( F3 C% S, d8 d% e) q' w        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 e6 H! c# B# y5 M3 {) C8 v- {        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" w5 b. V; ?5 x. d& O" V5 v3 c0 g  b, k  r0 S5 R
! |& W) V1 i2 f, M; x  f8 \8 y
import swarm.objectbase.SwarmImpl;9 S0 g2 X; |) @! S6 A, V
import swarm.objectbase.Swarm;
0 j) [5 h! ~  u' l, Aimport swarm.activity.ScheduleImpl;5 K- j$ X5 q1 F3 ?& U
import swarm.activity.Activity;! ]7 ~9 e5 z) p: w8 I- Z' P; B
import swarm.activity.ActionGroupImpl;
, R3 P: j3 {) v- D% Gimport swarm.collections.ListImpl;" q4 H0 I% v8 d# e" e/ y
import swarm.defobj.Zone;
2 ]) N# N! t) X, K) C8 R+ t2 G0 [import swarm.Globals;7 c4 d' [6 `' ^! X* y4 G
import swarm.Selector;  M" z3 m3 o, O" h; a3 H
import swarm.activity.ActionGroup; + q3 V/ B! {6 y) Z4 [  ^! l4 {
class Agent {
3 ^+ c! H4 S* `: J0 p9 J7 Y! F% c        char id;
2 A/ I" a0 a5 s7 f: _% O/ z1 S$ \' R/ |
        Agent(char id) {
3 j$ A- c+ W& k+ Y7 X, b                this.id = id;, L  ?. |( v) A/ A
        }
+ R# X$ ^( ?: |& S! L" c& N4 O+ h! g" X% ]7 K
        public void agentStep() {- P. ?# y3 Z( j/ i
                System.out.println(id + ":" + Globals.env.getCurrentTime());% `' V( ~6 _9 D5 l+ a% P  }( B
        }
1 z0 C- q' N; C* u0 z4 Q}
* I; C2 o5 H+ x2 M& s4 {, \* R  |& U& S( c5 l, n* i; k' R
public class ActionGroupDemo extends SwarmImpl {$ f  e% L/ ]! A2 f0 {0 d* N
        ScheduleImpl schedule;. |7 {+ m: Y+ f( y
        ActionGroupImpl actionGroup;
' m# k  l% j0 k; G1 f- p7 P# s        ListImpl list;
& u6 |9 g2 X' u: X1 B        char Id = 'a';
8 \1 V- o7 v/ P
  J- s3 A' E0 a7 c. y& M. Y/ A        ActionGroupDemo(Zone aZone) {
; H& A' E" y- G" L1 l                super(aZone);
" U7 C, k% Q* C; P+ d                list = new ListImpl(aZone);4 c. y3 T) N6 `# B
                swarmSetp();
! S) U% G) W- j  T; J                actionGroup = new ActionGroupImpl(aZone);
! Z' z3 u1 e" b# `- m$ k% d+ u7 ^                schedule = new ScheduleImpl(aZone);# _5 |2 }! x5 t2 Q% ?( o
                try {) L; \% d, x" c/ A7 I( h) A
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
) Y( U* `9 P9 m8 a                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- E8 O2 P- j& A: t4 b                          \- U1 z3 k' K* j. h, U* w' ?& F
                        actionGroup.createActionForEach$message(list, agentSel);) M+ I+ K( T. G% D* R
                        actionGroup.createActionTo$message(this, swarmSel);
7 ]  r2 Y! E& t/ ?! T( W' O/ n                        schedule.at$createAction(0, actionGroup);
6 X, a8 @/ N) [5 G3 w                        schedule.at$createAction(1, actionGroup);
& E0 i2 |5 H. b& Y9 i! J                        schedule.at$createAction(2, actionGroup);% O0 N) v) K/ d  t
! E! r  V& E: n9 I& e
                } catch (Exception e) {6 f! n( o" m: [% I9 a
                        e.printStackTrace(System.err);
% V; r9 |/ T# c6 @$ P8 p+ C                        //System.out.println(e);. C6 a2 B/ d$ s- x9 q# x. f8 X
                        System.exit(1);( x" ?* O0 X3 g
                }( r- a9 z1 z5 a" W! x
  H, M; h4 L# z# E1 _# ?

3 f* w9 O, ~( x" [2 w        }1 I2 l) L+ B. J1 I- U8 ~
% s% J# t, L: V- I7 F
        private void swarmSetp() {' W! N, b- Q9 E7 s, d& Y% D+ W
                list.addLast(new Agent(Id));0 M. F# d4 ~8 z1 o8 R" c
                Id++;
% \" M( F. k' F        }
. k  B2 X- A* Z
5 `, g' r1 S( h        public Activity activateIn(Swarm context) {. A- t) t: |+ o+ B
                super.activateIn(context);
( M# V; J( X4 \* a& _                schedule.activateIn(this);. w. z- a: D+ D3 i
                return getActivity();. i8 k0 h) Z( c* E+ f( H6 V+ l
        }
+ e8 I$ V; p8 ?: _: ?4 z
+ h2 G& T6 d# B$ }9 S* ]7 y/ Y- v        public static void main(String[] args) {
% e  t6 L3 }8 X4 ^0 @# r                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
# G: G3 `4 V( R' h# g                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 G  [- b& l" D2 {1 M3 i0 J                swarms.buildObjects();% E+ F  K' {! n$ v  l7 L. b
                swarms.buildActions();
- G/ w. y( B6 a) L3 A' |7 W6 v1 A1 V8 x                swarms.activateIn(null).run();0 ?/ g' x0 Y5 j
        }
  I- Y4 o* A9 y; t. r; x! q1 r( d/ v) h9 j* B# }# z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-8 14:46 , Processed in 0.018999 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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