设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4953|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - p/ {' ~3 {; [9 Z! c

8 m8 A) f/ c! c" k8 A* D本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21  v# C  I. b0 ]: G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. W3 ~' N- V' ]6 W( J3 oswarm.SignatureNotFoundException
% C6 h+ \) r# a$ }! y. [/ d+ F) F        at swarm.Selector.<init>(Selector.java:76)6 Z- e/ c( i% [8 ]( w" ?; H4 a
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)5 f7 s9 k+ Y" Q  D9 U$ |' ~6 ?8 r
        at ActionGroupDemo.main(ActionGroupDemo.java:67). R8 g% S* q) y" O+ Y6 Q

  i, v8 C1 ]$ e" f* x: l2 K8 i7 b
import swarm.objectbase.SwarmImpl;6 e. ?$ m6 x6 |- X! D
import swarm.objectbase.Swarm;3 p  @6 N0 k; Z
import swarm.activity.ScheduleImpl;
- w& u9 F3 X$ n3 Y5 Himport swarm.activity.Activity;
0 B' p' ^8 @8 }  e' y  jimport swarm.activity.ActionGroupImpl;2 P- D, P1 |  J  X  u) q7 q
import swarm.collections.ListImpl;
( h% S4 \1 }) O/ L- r" S. uimport swarm.defobj.Zone;   t8 a3 v: |' C# S
import swarm.Globals;
- n% k7 n4 ]+ y4 C+ Jimport swarm.Selector;
# U$ [5 T' P5 |9 X0 Z% m1 _import swarm.activity.ActionGroup;   K9 d4 R" k" @) J( C
class Agent {
4 k0 G$ V! l- [# q- L        char id;# z. c5 J! v, M0 O8 _( e
0 T* I! Y3 t, ]" B1 K5 }: @
        Agent(char id) {. L3 Q* g0 O/ B4 M1 S& ?/ v
                this.id = id;4 Y% l% x& j( o& W
        }5 A8 u/ d; V8 l! l$ ~- S; K3 }

' m8 J0 ]- g3 u$ {9 m6 f        public void agentStep() {- a4 Y* Z6 r4 M8 Z6 S. {
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; E. |: e. U9 ~2 [9 B7 D& |# X        }
. v; L* x- @; M2 Q}7 o# L2 S- X/ ^9 Y( I$ c3 p/ F
% c  W: l/ g5 }3 c
public class ActionGroupDemo extends SwarmImpl {) T, n- w* F& v
        ScheduleImpl schedule;9 C- g% A$ ~/ ~5 r3 `' b: c1 ]8 Q4 Q- z
        ActionGroupImpl actionGroup;
1 y/ F+ G2 `+ p) P$ Q& A" o  G        ListImpl list;% o) b% w  W: @. W+ p( O  T
        char Id = 'a';
  {! _) b/ n; G3 r% H& d" O4 K* B4 i) ^
        ActionGroupDemo(Zone aZone) {
8 H& p+ m- }, c$ `* y1 z0 p                super(aZone);
9 t/ Z( j8 @+ }6 B( u6 I# d4 U                list = new ListImpl(aZone);$ V' q" H& u3 I! k# n: l+ w3 ?, X9 r
                swarmSetp();
% H. U/ N/ o+ v. ^                actionGroup = new ActionGroupImpl(aZone);
9 f8 l8 b' O8 P0 c4 ~$ \5 R                schedule = new ScheduleImpl(aZone);
+ w! f4 u8 @, t0 ?/ S; p                try {
: K! n7 R& V% I                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 \* C# o) h  r8 d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行: ~: _: K' B' h' {7 G, R9 Y( {
                        7 n* U9 _2 ]& j; h6 Y3 a2 Q
                        actionGroup.createActionForEach$message(list, agentSel);
) x5 {# h+ f9 j4 w# Y& b/ ?: o. k                        actionGroup.createActionTo$message(this, swarmSel);" _  F* n* h2 V2 u4 Z; b) Q, i
                        schedule.at$createAction(0, actionGroup);% X% @/ m5 C0 x6 R9 E
                        schedule.at$createAction(1, actionGroup);7 s4 w: f- E3 k2 W
                        schedule.at$createAction(2, actionGroup);8 v. P6 T" F9 W$ U3 e" N4 M

0 T9 d; i- H, o: I0 F7 B5 Y, W9 d                } catch (Exception e) {- h" U1 m6 h0 m) k6 S" `
                        e.printStackTrace(System.err);
, n; T5 {8 \7 l# s8 Q* ]$ V9 x                        //System.out.println(e);
0 z# [6 j( J& _! P3 l$ n: f3 m                        System.exit(1);
9 A" v# H1 f' ~) z( _! P5 }. @. @                }
4 k% v5 r% @1 K: Z# \
4 H0 w4 r  ^9 m. v9 J/ }" {1 p
( ~9 M; k' j) ^- ^8 |' d! V        }
2 L, J1 A- \6 ]# _" n; e2 r* P# }
( `) k. ]9 x# I6 f$ i3 i        private void swarmSetp() {: P# T; J, m5 p$ j0 X7 p7 |: l
                list.addLast(new Agent(Id));' @9 A  n% n) }& l. j6 [9 B0 ~
                Id++;
0 V# S# R" }1 \2 t2 f/ x        }
1 I) j) w* k( x1 |$ L$ k2 r' N/ I' I3 N
        public Activity activateIn(Swarm context) {
( n* L* R& l1 i9 U) }( m                super.activateIn(context);/ a7 H0 Z3 c) I. G6 E7 v$ x" O
                schedule.activateIn(this);
' b5 h, q) l4 Y) `  Y7 E8 i                return getActivity();
& H; U# j/ ?7 D: S8 o% ~( ?( I0 P        }5 \! s$ t, m" A9 a

" R( Z% f/ c$ `0 d- U. h        public static void main(String[] args) {
- v7 c! H6 M0 x                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);" e( D8 v; r& `2 x
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. j9 A8 A8 c3 X: {9 w' x% V5 b                swarms.buildObjects();5 f1 D0 X% s3 q6 R$ p; W8 e
                swarms.buildActions();8 U2 i3 X- {/ q6 O
                swarms.activateIn(null).run();
$ w, Y; v! }! T8 h& |        }
) _5 u9 T$ i8 e. P- F  I/ _( R" W
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-19 07:21 , Processed in 0.017045 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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