设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5735|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 : C7 b2 @9 g6 C3 j3 ^' [5 p+ m
9 h5 F: |% L3 Z! Z2 `
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 c! N# {/ l/ j# F7 y% k以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.' P/ H# O# t; H. S) ^# v
swarm.SignatureNotFoundException; V; ]) X& P7 ~
        at swarm.Selector.<init>(Selector.java:76)+ t: l9 M& L& V8 I. i' Q' P' H
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ J" A. x8 i: }8 P2 T4 K- f- J
        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 y: I. d/ O$ _* \% {2 l5 B

4 F. ~8 X8 U' V2 u$ t# ?& m. w3 i% v6 g; l3 ]  z( A( j% o) M
import swarm.objectbase.SwarmImpl;
4 e' M5 ~: e5 }1 |0 V3 {) N' |+ o5 [0 Vimport swarm.objectbase.Swarm;
! C1 a; M1 H- u  wimport swarm.activity.ScheduleImpl;! h6 L% n2 N( ]+ {3 X+ t6 l
import swarm.activity.Activity;
* R# e/ `, C7 X1 Q1 Bimport swarm.activity.ActionGroupImpl;2 l) e7 h8 q. u' I* a2 }
import swarm.collections.ListImpl;
7 K5 ~* k2 F% i0 c9 Ximport swarm.defobj.Zone;
8 E1 E  \3 W7 [- Pimport swarm.Globals;
1 |4 Q# i( s2 e2 P; l' Y5 Ximport swarm.Selector;
, `0 W( j& z1 U% Simport swarm.activity.ActionGroup; ) N8 e7 w. W  H  `
class Agent {
% C1 G  G5 @* i! k        char id;
8 g4 G7 B: Z3 v' ], D
: F+ t7 W2 W" K3 i8 n        Agent(char id) {
( J3 N, ~$ v  ]9 l' O) W4 O: ~                this.id = id;
+ D3 B( z. a4 Z* Y        }6 h( A5 C; P" |# e
& k8 ?6 I* U( s/ Z( q0 ~  ~) |* ?
        public void agentStep() {
) E* c0 z/ B8 M/ E* r3 ^. y8 `                System.out.println(id + ":" + Globals.env.getCurrentTime());8 Y7 N, l$ X5 e
        }/ J" V) c/ ~# J0 v
}4 w9 o# j6 g( K& x
8 A0 }7 e  h# u' T, r3 `0 v
public class ActionGroupDemo extends SwarmImpl {0 B' q7 N9 O' L
        ScheduleImpl schedule;* ]5 G# [: m  M  q, [  |3 @
        ActionGroupImpl actionGroup;
8 r( g2 Q/ f, i5 Y$ p3 z        ListImpl list;* P# Z: \- D& C% f
        char Id = 'a';- K2 x# G6 O8 s$ n1 S

# l0 n  R/ _0 p  k( g8 ~7 i0 J        ActionGroupDemo(Zone aZone) {6 V$ c8 R1 n* r. q9 S' q
                super(aZone);- J1 B8 f# ?8 q3 q" |  b0 o- m
                list = new ListImpl(aZone);
2 O* Q. s% a1 t' ^& p% \                swarmSetp();
' M- `3 z! ^3 v9 R9 @# u                actionGroup = new ActionGroupImpl(aZone);3 q, r- N; d% c4 ]! p5 S
                schedule = new ScheduleImpl(aZone);
& X5 b7 W( X: t6 l                try {; Y5 R" ~) W3 t3 l% ?; w
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 I3 ]% k3 j# D                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行/ z6 e" S% n7 O* R6 C5 a9 _
                        
- b+ G+ g6 g) v  x  r                        actionGroup.createActionForEach$message(list, agentSel);
9 y& G3 _) b& c0 Q( f                        actionGroup.createActionTo$message(this, swarmSel);# c! a0 j0 q% N) {. U  [+ [
                        schedule.at$createAction(0, actionGroup);, m5 T' _( \. K4 i4 P
                        schedule.at$createAction(1, actionGroup);
. Y5 K- L) E& ~2 R, p                        schedule.at$createAction(2, actionGroup);! P4 g; u2 [9 C

. j# Z. t4 f# a  X+ T                } catch (Exception e) {5 g# I  |) s" C: |$ q
                        e.printStackTrace(System.err);. z% X+ y$ q+ P; i2 Q. A3 @
                        //System.out.println(e);
1 U0 f. |& U8 \  h/ [- B                        System.exit(1);
3 `, U2 ?  }9 L8 {9 b$ q                }
8 h  o6 E% M/ X% K( k
9 ~6 q5 W. h% O
" ]1 V9 X% p3 Z" D        }
7 L, U$ n$ M0 k% z: \4 G# h9 x+ _, \9 B
        private void swarmSetp() {+ N$ q% |2 A9 p# a" K0 m' v6 O
                list.addLast(new Agent(Id));
8 }( R) C6 |( a                Id++;
8 L$ l$ _6 U: h3 y, m" [" s) N        }
' ]5 Z4 X1 H# w8 I; u) j1 p" i* u  t8 @
        public Activity activateIn(Swarm context) {6 }* H* X1 f1 |; X. i8 i
                super.activateIn(context);) t/ b3 F( p3 K+ z0 X( {. ?5 }
                schedule.activateIn(this);
+ D% @% [1 e' I  I) j                return getActivity();" F2 S( P" x( u! e7 C- j
        }
# E; X. k5 m5 R1 ~6 N0 V3 i8 g8 m) g5 q8 `( [. H6 E* o+ \
        public static void main(String[] args) {
& t' N% [. H; c* D9 V                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* F+ L$ O0 L0 ~3 a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, c. h& U& O% M3 M, F9 o                swarms.buildObjects();) V2 N/ [7 t1 i
                swarms.buildActions();$ p0 `* {8 K2 P7 b
                swarms.activateIn(null).run();2 r6 c3 W( L! ~; z9 Q& p+ q
        }2 D7 u7 t0 I& g2 e+ w

/ R, W+ f6 g/ m9 q. `9 j9 G}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-22 15:47 , Processed in 0.014073 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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