设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6663|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
8 r/ {% R1 K: ?! e* L6 k0 ^0 p6 p1 G7 o# ?2 t
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) @1 _5 \& x8 W5 X以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& O8 q- z) d- U# g$ e5 F
swarm.SignatureNotFoundException
, q  s% c3 ?7 t7 f! ?) M' b        at swarm.Selector.<init>(Selector.java:76)& G  P7 c- J2 J# }7 M
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
0 X8 b' U" n! b# \$ i        at ActionGroupDemo.main(ActionGroupDemo.java:67)
" o- p8 Q& c* K7 F( ]
) _) E0 W4 y! n6 @& S
- [, p9 m! L9 ?' cimport swarm.objectbase.SwarmImpl;7 `4 i; u& t7 p, X
import swarm.objectbase.Swarm;
/ h% v: _1 P9 ]- W; n% Qimport swarm.activity.ScheduleImpl;
/ R" g9 c. F. K& o% ^import swarm.activity.Activity;
* A" a; ^; J$ M( U6 pimport swarm.activity.ActionGroupImpl;$ v' n: E/ Z/ \' o( g
import swarm.collections.ListImpl;
0 q& C1 g: O* V9 v/ Vimport swarm.defobj.Zone; 2 d8 M% |/ `% @& w) V: ~3 I
import swarm.Globals;# p% A: T8 R% j( g; g7 E6 y
import swarm.Selector;% A# ~7 H. L$ e2 G) S
import swarm.activity.ActionGroup; ( C/ l. @' m* f
class Agent {
7 s1 C1 a% l3 S3 q! Y4 i  ^        char id;. O2 [  b9 I) _1 z
6 Q0 z/ c9 F7 `5 C
        Agent(char id) {
+ g/ o1 ^- J- W, }& u* _                this.id = id;
1 P9 F9 K5 S; N: }3 [1 Y        }. c. B7 x  B/ i9 ~# B

1 T9 z& j8 \% ^" a" c1 E5 C        public void agentStep() {
% e2 o) p* I, }* L" r/ K) h8 k% z                System.out.println(id + ":" + Globals.env.getCurrentTime());
* k) I# @7 r3 ~$ ~        }
% ]; v( Y7 y, x& M* c) ~' y}
* d- m! k( S' k) o# \
& {4 e, K& R/ n  l+ J1 u( m$ \public class ActionGroupDemo extends SwarmImpl {- X0 Y% R1 E8 e2 J* [4 K
        ScheduleImpl schedule;
$ _0 j2 d- i. l6 Y. |% V; B        ActionGroupImpl actionGroup;! j7 o+ q$ J8 C. |$ H" j) l
        ListImpl list;
" ]; p4 L8 b5 y! `( T        char Id = 'a';# a, `$ f  ^! ~# @3 T! H1 [3 _/ o8 Z

" A# B* w9 C% s4 B  j6 F        ActionGroupDemo(Zone aZone) {8 d( M5 f4 |: t1 N
                super(aZone);
2 P- b" \7 O4 y* ^                list = new ListImpl(aZone);
0 |: p  e9 x  v0 P7 B                swarmSetp();
. r4 g# y2 [5 S& t. K! A& i7 C2 {                actionGroup = new ActionGroupImpl(aZone);
8 `3 ~5 _8 k7 \0 ^, r3 }9 a                schedule = new ScheduleImpl(aZone);0 d% r# p$ z3 [1 u5 ?! D3 |
                try {6 s- |' J% [. R( ~* S
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ i* y/ j# u, m9 O) b$ }3 @$ W. B+ e4 J                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
# c/ h; ?5 c- m( ^% i! G, t                        
6 d+ d7 {" V% G2 {7 b  Y' g                        actionGroup.createActionForEach$message(list, agentSel);
! w- G' P% ]$ o( X9 a& s1 M. a                        actionGroup.createActionTo$message(this, swarmSel);$ y. g7 \9 ]$ `& }8 E% Z$ C% k
                        schedule.at$createAction(0, actionGroup);% R2 L+ R7 {) ]! g! i& {2 q8 ]
                        schedule.at$createAction(1, actionGroup);6 d2 K1 S8 \* }$ |4 @# ~4 t
                        schedule.at$createAction(2, actionGroup);
3 s8 Q# j: p1 v, r( a% I
+ D/ ~5 o2 J+ R% |                } catch (Exception e) {
0 _% B1 K$ N+ N! C6 X                        e.printStackTrace(System.err);; _6 S, W7 t, E. W( p1 S6 z
                        //System.out.println(e);5 {& V* E' \5 n/ t' i! K" M! c6 M
                        System.exit(1);
* \+ Q9 ?+ [3 P# k: |' ^8 B  l                }4 m! B+ e( c$ F) u7 g7 ?
2 l( O: _2 [+ k3 x# s' I" o: n
0 D+ q3 L5 E+ `
        }# w% V* R% V( F" ]) |
& Z( H6 _' F+ c9 Y
        private void swarmSetp() {5 B& C; ~! t8 d  J
                list.addLast(new Agent(Id));3 S: E. i( J* b& X( N- i3 W6 ^
                Id++;
; R; S8 J0 ~8 H6 {        }
. Y8 x2 E0 [& b: Z: E( J- L% |9 M4 B" ?" G- L' n" }
        public Activity activateIn(Swarm context) {
- u: J$ p$ Z" Z) Q! C; w  j                super.activateIn(context);2 l2 b4 {6 M* J, @
                schedule.activateIn(this);% O6 O7 k& |# L* R4 U* t: a6 ]* A
                return getActivity();
: Y9 I7 g3 i) @# V: [2 {, y5 I        }3 V' j' A( h, y: w% a
8 F' y* N/ Q6 T! C1 i
        public static void main(String[] args) {
0 ^. \: r/ x3 M$ c( U: V6 V                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
! K0 N  v/ R) z8 J5 r, J                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
# B; \3 W* W; l* X                swarms.buildObjects();
" Y8 F" Z1 W- w2 N                swarms.buildActions();
, ^4 ~5 F8 {9 R3 x/ k6 `                swarms.activateIn(null).run();
  i4 q5 E. G7 @( S- T3 s        }$ @% U2 m* `- p
7 A  t6 Y" O2 ~' ?
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-4 23:06 , Processed in 0.016365 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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