设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13227|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ' w8 x9 U- E& t8 J

0 I% S% s& Q( L. ^# I. a; y本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ d' _. x& ~5 K+ J
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, C- ^. R$ t. c. V& Q" T: fswarm.SignatureNotFoundException
6 T; F2 y' a# {* @6 h( v        at swarm.Selector.<init>(Selector.java:76)
$ r8 N2 S; w0 Q" H+ X6 D6 J        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 z0 W, B, t! C
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ W8 o5 o. K0 o' t( E

5 X+ s( w" X2 u: M* K, l4 x( n! Y  t# k5 O% |
import swarm.objectbase.SwarmImpl;
7 m. A( r1 H( O: j0 w2 J5 C* Dimport swarm.objectbase.Swarm;& R+ X/ d: ]2 v, [
import swarm.activity.ScheduleImpl;
: `7 q1 Y) w# p0 G( `: X7 ]import swarm.activity.Activity;
* p; g( `' o6 a, c3 Wimport swarm.activity.ActionGroupImpl;5 n1 `- B- ^$ b' ^) O
import swarm.collections.ListImpl;, N: F5 ]. L. X& h
import swarm.defobj.Zone;
+ v4 A; h# y: C" @& }/ `/ {import swarm.Globals;1 W( x; U) J+ B
import swarm.Selector;
$ D5 F" ~/ j/ C. t# o4 H& qimport swarm.activity.ActionGroup; & F' f5 Z2 x: y1 `
class Agent {
; z, R: v* |! Z& ~        char id;
' m& p1 Z% l& d  r% \4 \9 f9 j
7 T3 t/ i# D$ Y( Q& h' S- Q( w        Agent(char id) {0 G$ z" i& D! s6 o
                this.id = id;
$ |8 G7 R+ t2 t* r% C        }
+ ~- |. z' u9 g/ ]+ R
$ _( ^+ z9 T3 K  e2 C0 k8 A        public void agentStep() {+ R, H5 f: Q6 F( g0 `# h' w
                System.out.println(id + ":" + Globals.env.getCurrentTime());2 z+ P5 F2 |6 a5 F" _& f: a7 X
        }
5 w2 f! M7 ]) K# f: q}* T# S# ]: L+ j: t

) p1 O2 F' j$ p; Dpublic class ActionGroupDemo extends SwarmImpl {
5 {0 g9 G+ E" a4 |; O( T        ScheduleImpl schedule;- H8 z6 l) {9 T; _( t- O7 o3 G
        ActionGroupImpl actionGroup;5 J8 q0 ~" U8 m6 N6 r
        ListImpl list;- R, g7 J% Y: w8 _& u% c
        char Id = 'a';
& L) E) Z# R0 i9 C8 V* |
: {% V7 Z  |% u0 ~) ?9 r" ~        ActionGroupDemo(Zone aZone) {
3 d" i1 K7 X0 b6 K' {                super(aZone);% I' Z0 g# X4 |% t
                list = new ListImpl(aZone);
4 G2 s+ E$ l* j% ^0 d                swarmSetp();
0 g$ Z: Y4 P) O8 X5 l' S; m1 t                actionGroup = new ActionGroupImpl(aZone);
. r' v# H  f/ S# j) h9 O* }9 c                schedule = new ScheduleImpl(aZone);; x( X1 \% e/ [* [9 l! f; |; @
                try {
% z* L- \- l/ E8 Z7 _9 I  D                        Selector agentSel = new Selector(Agent.class, "agentStep", false);$ }5 ?8 k7 J. {, E, l4 W, l: t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
6 w# f1 F) z2 t6 L/ z0 [# Z                        
4 Y- X7 o; U  ^/ A                        actionGroup.createActionForEach$message(list, agentSel);$ O+ ^+ J7 y5 Y; K# B) [- |' M
                        actionGroup.createActionTo$message(this, swarmSel);# N$ }. E9 Z8 _9 L( r
                        schedule.at$createAction(0, actionGroup);
, B# ]1 i) o, N  E( {2 w2 Y2 i0 B                        schedule.at$createAction(1, actionGroup);/ A0 O0 x& `5 x% n* p' N
                        schedule.at$createAction(2, actionGroup);: `8 O- O! J4 W8 h

0 {: `  ^7 g% o, r9 X0 @# G                } catch (Exception e) {
2 s5 [: Q8 M1 _3 Z1 p* X                        e.printStackTrace(System.err);
, @% r* S9 x9 e% _2 b                        //System.out.println(e);
; k- t) t! n7 v: `( U1 Q; W9 l                        System.exit(1);1 M( E$ b% T, N8 C2 P/ p, W+ u0 j
                }2 N; z, u4 k2 v0 V6 b6 z. {; c
. d$ ]6 O' d* q% Y% L$ [
' b' z* }5 G) E1 |- e! U4 l  v# x* n
        }, b0 D  K' j% d; h& g  x
6 f' k& j) H5 o' g
        private void swarmSetp() {
: g9 h- A- o8 v' W8 w( [9 c$ ^  X: I                list.addLast(new Agent(Id));! ~. T9 Y% p0 e  i. k7 d1 r' s4 j$ M
                Id++;
! d( a" f+ \* @% X* W        }
7 Q0 I, E( _+ p+ x# U+ X8 w2 K  S: q0 Z$ e) k: l
        public Activity activateIn(Swarm context) {
: e. G, C6 G( s8 H9 O0 f. E9 D& E                super.activateIn(context);6 X6 d$ y0 z0 y8 p! p( E' C
                schedule.activateIn(this);
, y: }# J, N0 w/ {4 A. E                return getActivity();
# N6 ?0 Y3 h2 i- u: r4 W+ a- Z        }' o7 u* v! u& K
3 B3 j, _/ X! l4 F
        public static void main(String[] args) {/ F' h' K; C8 d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
2 ?* V: _, s! N: a' H$ ~( H  r4 {3 {/ C                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
6 Q3 _* p1 f6 q' I                swarms.buildObjects();' w4 d" \  S9 w) ]) B
                swarms.buildActions();
6 O0 L8 y# w% P! o  u1 O                swarms.activateIn(null).run();8 f$ ?% R: n0 b+ q& y
        }. K  W% v( v/ \6 W  ?
- H4 y8 X+ M* v7 G7 T0 Y
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-1 04:24 , Processed in 0.021402 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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