设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11513|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 . i. q/ m" w& n1 X7 ], @
; i8 E6 x, S7 C0 d
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
% }. s6 H5 e- S# s以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
3 u5 K4 X0 P- ~6 c2 y6 e$ L6 Xswarm.SignatureNotFoundException
3 H& w8 T8 t+ b        at swarm.Selector.<init>(Selector.java:76)
9 m- Q4 Y4 s4 D- Q3 i& i+ o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* ~  u2 [8 N1 f( }4 K
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
  C) f5 F9 p6 x4 F
! _4 y4 `/ {! a9 V' m0 o7 Y
- K& k. Z+ r- _# zimport swarm.objectbase.SwarmImpl;
* N0 j4 {- q7 S# p8 A! Rimport swarm.objectbase.Swarm;
3 g' `& z: w/ Vimport swarm.activity.ScheduleImpl;
6 x+ M( p  a* e2 `& Z9 e  Y2 `import swarm.activity.Activity;6 l7 ]$ Q) Y/ F0 Z& b
import swarm.activity.ActionGroupImpl;
# ]% i+ C5 h" k( fimport swarm.collections.ListImpl;+ h$ O3 Y( N8 h) _  c6 {8 P! o
import swarm.defobj.Zone;
) i: {2 K; {3 q/ ^+ E# X8 oimport swarm.Globals;
" Z+ Q, W" L1 h6 N3 [import swarm.Selector;" o+ n. }! k: {; t
import swarm.activity.ActionGroup; : F4 Z+ i/ y. n2 \
class Agent {3 o- E) t7 B( s) s
        char id;
" @% _9 J0 U  q
% d! b5 W: F* i7 a8 C        Agent(char id) {0 C9 k8 p5 p7 B. \
                this.id = id;
1 ~6 }2 N6 C) a8 m        }- F# r4 Z. O: ?% V

0 Y& k) G5 I! S8 D5 V. X$ \( |& ~        public void agentStep() {
/ V# O, _7 n; ]/ l% N                System.out.println(id + ":" + Globals.env.getCurrentTime());
% s3 P- `4 F: W# E4 M( G        }- Y* ]+ D1 |: g( ~3 l. w
}
/ Y6 u6 [0 O% q+ N# y! l( {0 b  l* E4 ]6 E* Y0 x, G, P
public class ActionGroupDemo extends SwarmImpl {
7 s8 r# h' m9 [3 L) P        ScheduleImpl schedule;
! V; w/ T( b9 b7 y+ n+ c; r        ActionGroupImpl actionGroup;: r# `! ?4 p+ s% _% `3 H& H, Y
        ListImpl list;, J1 [5 `5 \) f
        char Id = 'a';
9 f) S$ Q' N' O+ I8 q* M- L8 k" _1 t
, E: F  H- _3 C5 w% R        ActionGroupDemo(Zone aZone) {/ t0 k1 @7 E; P6 F* F9 q/ A& `9 o2 w
                super(aZone);
# `9 d  o: q' `# ~$ @. A6 ?                list = new ListImpl(aZone);
- ?* H4 v( t+ I* a. `1 E                swarmSetp();+ n. F) F3 X( R0 y( ]
                actionGroup = new ActionGroupImpl(aZone);0 c; J' J' f8 S! I% o4 B
                schedule = new ScheduleImpl(aZone);
" D& O/ U8 w7 k. ^; [8 C                try {
' H$ D0 l3 d1 V) T, l5 t) H                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
  F: S/ E6 v+ H9 b& @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 F& A6 D' e! z! X( B
                        8 ]7 Y" a0 b, G2 @. S
                        actionGroup.createActionForEach$message(list, agentSel);
& |6 [. o- [' @                        actionGroup.createActionTo$message(this, swarmSel);
0 i  u4 J* V% m" B6 m                        schedule.at$createAction(0, actionGroup);0 {; w" A% R+ |+ v2 S/ Q$ S% Z1 B
                        schedule.at$createAction(1, actionGroup);/ l5 t0 g0 o1 k3 P
                        schedule.at$createAction(2, actionGroup);. a3 K/ s5 t. V: I
( j" x- i* h. p6 S: E& W( d$ y
                } catch (Exception e) {5 d2 n) B# R, b9 o
                        e.printStackTrace(System.err);! |/ h, \- b9 s* A) D
                        //System.out.println(e);: g! [& x1 O! E9 S0 K+ Y
                        System.exit(1);
+ C- J1 z7 k9 X  X                }
; o) I: j$ J* ^, R: x0 V( o5 J6 O+ X$ i
5 o7 [  L' N- o
        }7 |* a  t7 c8 O$ z
4 O8 [, d1 [9 T4 r* H
        private void swarmSetp() {4 h& l0 P4 [, W2 z/ n, \5 a' I/ I
                list.addLast(new Agent(Id));! L& I6 l. F0 p2 m. @
                Id++;9 y( @$ s; ^+ l
        }
: X, q  A5 Z: D& w, O) i" u8 n9 L3 d& [3 l. @) p7 U. C
        public Activity activateIn(Swarm context) {6 y2 X$ n8 b& Y  o
                super.activateIn(context);7 x3 o" }5 k  _( }* e% H7 Y
                schedule.activateIn(this);# s# S: b* q9 L; y+ N2 }( W
                return getActivity();
: x6 S' ]1 _) B6 {( a        }" p) }' d* E0 Q% L. O" L) v5 ~. C

9 w- B5 s: Y$ W/ g. L        public static void main(String[] args) {8 o7 ~& m8 N9 N8 ?8 ?- u
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ Y- N; q! B. A! a  \% y: x: z5 l                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 I5 M( o8 Z  ^3 ]/ X' d9 G6 f+ _                swarms.buildObjects();
' g( ^+ _/ k1 S/ H# _. K6 Q                swarms.buildActions();
/ n8 s- @. t8 A' [                swarms.activateIn(null).run();
' J3 B* Q+ C6 u  x1 S$ ?        }. v8 d( m, y! H

9 n1 |/ @/ g, N" @6 W6 o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-14 15:08 , Processed in 0.017690 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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