设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9279|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 L; ~) L5 E$ H+ h3 {  K

# t& z8 b7 t3 A6 ~1 d本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21, g3 j8 R5 p; o. ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
' _9 [& y: F+ h8 fswarm.SignatureNotFoundException( [, ~* x9 V* y7 j  ]& X
        at swarm.Selector.<init>(Selector.java:76)  {2 E- k# F: L$ y! U2 r
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
6 {* T1 x/ n  k! d        at ActionGroupDemo.main(ActionGroupDemo.java:67)0 }7 q" `! c9 d' u9 h3 Z- Q8 Z
4 ?( ?, e8 P& ]% x

; r6 `7 e$ M+ z; A5 {import swarm.objectbase.SwarmImpl;' l2 W' g% H" _8 A& a$ a/ {
import swarm.objectbase.Swarm;
# D( M3 I" L6 M+ \- k( l7 timport swarm.activity.ScheduleImpl;/ h' p2 T6 _; E. b: E
import swarm.activity.Activity;
4 C; @+ D# E' b- J8 ~* q1 t& Fimport swarm.activity.ActionGroupImpl;
5 Z& m; ]: z  J' Bimport swarm.collections.ListImpl;& ?9 z7 \, r7 U2 n" _2 u
import swarm.defobj.Zone; / }# k1 c$ [  e, N2 M3 a
import swarm.Globals;  M7 @8 q5 u$ e8 v
import swarm.Selector;
2 B% o+ ~  c! W. |import swarm.activity.ActionGroup; 9 m; H6 a0 i) X* G0 d( r, F0 I# u* j6 q
class Agent {
3 e, ?! n/ f) b# a, e2 G        char id;
5 v! _6 |, M& }+ J
+ W$ x  B8 n8 n. a; N& H: r        Agent(char id) {
/ _3 o: c8 @6 k$ O                this.id = id;
( K0 H; O5 [8 y& q        }
6 j: }  S4 D* X* g+ U+ I5 q- @4 D
. y/ k* c7 d; d6 D        public void agentStep() {9 j1 R9 z7 S. @
                System.out.println(id + ":" + Globals.env.getCurrentTime());
) h% {9 {' ?5 k7 U        }' D9 P8 F8 Y8 C  d
}
' T: C9 B! y$ I8 j* q4 f
3 ?. h7 p$ Z# w: \. ypublic class ActionGroupDemo extends SwarmImpl {
6 Z# p6 l' ~$ |- _" q' _        ScheduleImpl schedule;
" y* b* B- @' [$ {$ w! F: o) {        ActionGroupImpl actionGroup;
/ I- q& }" |: p2 H0 r1 f) i) D/ Y1 S        ListImpl list;+ d% _3 J% |, p% @$ ~* N+ h
        char Id = 'a';
) m) ?- l2 ^$ i2 _! q/ s
5 o4 S: M( G$ W# D% i        ActionGroupDemo(Zone aZone) {
% {# N. K; u7 _1 }4 A                super(aZone);
+ ^  I) b4 f8 g. Z( e- X$ Z0 S' p                list = new ListImpl(aZone);( F3 A, M6 E5 T7 z
                swarmSetp();) b( r+ K& W1 a9 E" t" A% [
                actionGroup = new ActionGroupImpl(aZone);
6 ~& e5 r0 {2 s: \: S2 z                schedule = new ScheduleImpl(aZone);: N* S8 h* w' `7 Q$ O3 w3 b
                try {4 f+ e. f1 t1 N  Y" I
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);' o9 [! U9 P8 l) j6 b6 [& P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
$ w* a* ^" S& q3 T                        
" v, l! o6 b6 X5 {& P( N" E/ W                        actionGroup.createActionForEach$message(list, agentSel);' Y% x% C4 n% @% N6 U
                        actionGroup.createActionTo$message(this, swarmSel);1 ?. ?; J# \* _, U
                        schedule.at$createAction(0, actionGroup);
/ H  Z2 ]# d/ W4 ?' G! F; k                        schedule.at$createAction(1, actionGroup);
4 W& x3 ^* T9 X& x5 Y0 i                        schedule.at$createAction(2, actionGroup);
! k- F9 Y6 B0 b  B4 L- c" W6 `& s, R. x* O* z( U8 Q
                } catch (Exception e) {  X2 J7 j  d3 Z6 i; M; Q, m
                        e.printStackTrace(System.err);
- ^' P- U; k( U3 O4 x, v7 U                        //System.out.println(e);( q1 E1 x* F" U. @! U
                        System.exit(1);& ~; ]6 l+ m' k) G) I& ^1 z
                }' o/ f8 Y9 Q. b- {% o
1 n. Q: r5 b8 `& Y+ ~  r
' J( ]/ r) x7 S2 c! f
        }, `! J0 U- K. I: ]- [' G( l
2 P, s( l1 O) W4 x2 F
        private void swarmSetp() {9 ]/ `! l$ U' Y4 \7 l1 V
                list.addLast(new Agent(Id));/ N% T' g* R0 M- m' B9 t
                Id++;
7 {6 t9 m* Q. U* a: t& I        }6 @! M1 Z" f: |4 M& `
2 v/ A9 c. x# l* u
        public Activity activateIn(Swarm context) {' H# X' u% Y; r  s9 H
                super.activateIn(context);
8 Q% w6 U, x! y3 N                schedule.activateIn(this);* G/ g; m. o/ u/ @
                return getActivity();
( q. I7 A: A8 x. V. m        }$ n! ]& `: F# I

9 Q' t8 H. `& s9 t2 Y3 x        public static void main(String[] args) {
& h9 c$ x: m9 ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 D7 t) O6 T2 C
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);. N7 z% k* L/ }' a' n
                swarms.buildObjects();
, z% t9 ^$ s9 _8 x5 L/ m                swarms.buildActions();) h6 ^  s2 f8 m1 Q0 @5 p3 A
                swarms.activateIn(null).run();% \4 {7 k6 d- N
        }# h, r: D- I& k' h+ l

  Z2 e* Z# f, ]' A7 {}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-7 09:47 , Processed in 0.020276 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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