设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12455|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " o8 U6 Z8 b& @  a# U  L" A& J( R

. b7 q$ e- K' j2 X: g本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
7 P9 L- b% t3 b2 o* n- h以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.! X/ F2 U0 q; a$ [. g, P0 {/ l; D; v
swarm.SignatureNotFoundException
$ }; N; }2 ]0 h' w. E! g; p+ E! k0 E4 G        at swarm.Selector.<init>(Selector.java:76)/ N5 Y" b# g0 }& n% }! @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# d( `4 q' w" |1 D2 f5 x: T$ p" k        at ActionGroupDemo.main(ActionGroupDemo.java:67)
* |) c# m: h9 Y$ k; E: i0 a3 r. @+ a4 W  @- g. m

) y" m. q, m, @7 s2 y/ M4 bimport swarm.objectbase.SwarmImpl;
% F; Z4 s% v: w) z0 z, oimport swarm.objectbase.Swarm;
) f; `! J3 _8 {7 y: g- o& Timport swarm.activity.ScheduleImpl;
6 O+ O6 w: I3 k7 j: }; _import swarm.activity.Activity;: n; v4 X# c* y/ W" T& p% O/ K
import swarm.activity.ActionGroupImpl;
# I; v- P) }, k: G* aimport swarm.collections.ListImpl;9 @7 i0 L+ E! U; A# m% v* X8 c
import swarm.defobj.Zone; , T3 n' l8 \2 }1 P9 R8 d3 b
import swarm.Globals;' r) R. S' j6 i( [9 @
import swarm.Selector;
* j+ l/ u0 m0 q9 f+ q7 C$ C& fimport swarm.activity.ActionGroup; 2 K; ?+ Y% n- m+ l' o' i  h
class Agent {
8 V% T+ I  h; `$ d        char id;! G# L/ I8 H; T) f2 t/ T; |& l

+ S5 Q  N; H4 ?        Agent(char id) {: e% v) {/ b# B- s! j7 a
                this.id = id;" r' o% @4 a9 z) K
        }
: v; L7 N) M6 \% y2 A" E
. i2 W0 E1 x# v2 Y        public void agentStep() {
5 ~. A$ a6 Q/ [" M2 i+ K                System.out.println(id + ":" + Globals.env.getCurrentTime());
5 ^& q7 O; o; M7 g% O- ~: h3 f4 {        }2 J) ~  e  M/ q" i2 ^- \
}7 [" n9 c9 F2 O/ y' k! e0 h
$ v1 \1 |6 j' p& _
public class ActionGroupDemo extends SwarmImpl {
+ V: j& s% u. @% f7 ?5 R& \2 i2 M        ScheduleImpl schedule;( l) y9 t8 v1 j6 E' ?; _" H
        ActionGroupImpl actionGroup;
: Y2 G  b$ Y. Y9 g9 d        ListImpl list;2 {* M3 k  F! ]2 ^+ H
        char Id = 'a';/ k+ \2 r. s/ T  O% [$ d

$ @& E5 N1 ~/ [& x  U) _        ActionGroupDemo(Zone aZone) {) ?  G) g  g7 C9 o9 H
                super(aZone);
- h# Z( \5 L* D6 I0 y0 O! Y0 X                list = new ListImpl(aZone);
2 b- g4 I( a& i& C$ V/ D- z                swarmSetp();8 O' ^- X9 ]. R; c
                actionGroup = new ActionGroupImpl(aZone);! O* w- g# c8 k- S8 V) j+ [/ O+ K
                schedule = new ScheduleImpl(aZone);
! o, y, i4 D) M, `8 W) {                try {+ D% I( D6 ]0 n" {# O0 q; B0 y
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);1 }+ }  j2 h5 V0 X# |2 P5 x- \
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 @3 E3 S1 T1 ]- E; V" ^4 Y( ]  ^9 a
                        
" p& I6 l  e% I$ v" Q                        actionGroup.createActionForEach$message(list, agentSel);
+ o* P4 ]8 I7 @                        actionGroup.createActionTo$message(this, swarmSel);1 Z& s* J' ~7 f; F
                        schedule.at$createAction(0, actionGroup);2 F3 i" G: r& t/ u/ D9 c: W
                        schedule.at$createAction(1, actionGroup);) N# b3 z+ w* }. `- i! N
                        schedule.at$createAction(2, actionGroup);' ~7 d. Z; S" a) C- M6 ~

$ y; A, {; J4 C# e: A) _                } catch (Exception e) {* h* R2 n. k& `7 F) L  j1 E
                        e.printStackTrace(System.err);4 Y1 N$ x3 ^2 H& A9 Y* L
                        //System.out.println(e);2 l! L( {/ B% V5 b% x
                        System.exit(1);
0 p" e  b2 l. I/ A                }0 n  Z2 i+ Z8 D1 z! {+ W: p

1 q( w7 B2 E2 M0 A7 C9 p: K# Z$ [# ?0 K7 y! s# B
        }& h0 q9 J: ~  ~& G% v" F
+ C( }- C3 v2 J  A& A7 F# i+ a8 H
        private void swarmSetp() {
3 g6 a- t4 d* I& o                list.addLast(new Agent(Id));0 H2 m5 Y) e8 s2 x
                Id++;
1 V2 P) g* |# y$ k. G7 y3 u1 Z        }- }. J# s) ]9 D( w/ J3 e2 q* m
& l( ~4 L% P6 v6 f
        public Activity activateIn(Swarm context) {3 W' k" Y* v0 Y
                super.activateIn(context);) @% D8 i* [2 [; H) t+ C* `
                schedule.activateIn(this);, A+ h# M- Y1 X- [2 d. m% ]) N4 ]+ S
                return getActivity();, ~4 I& ]* n/ c# w' U" S* H) `. Y
        }, t5 _1 I+ U1 F% S% e# Y" `. h
& B) x% T" A  D  y: S6 V7 Y7 @
        public static void main(String[] args) {
2 o! t! E" T# G7 \- w                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 a" m( Q( s* f! m                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 a- |- {! n+ \. s& s1 H: w7 O
                swarms.buildObjects();
7 g: \5 S* W+ E1 h" h+ l6 h                swarms.buildActions();9 {( Q" L/ p8 Y' z6 n
                swarms.activateIn(null).run();
5 S& y& K6 q$ `7 p% B& q        }5 V2 Z! M- F' Y; B/ ?' g9 c; f5 e
& d- p- |9 C0 r9 O
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-9 04:05 , Processed in 0.023318 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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